Markdown to PDF converter using Pandoc and Typst
Project description
mark2pdf (yakultpdf)
基于 Pandoc 和 Typst 的 Markdown 转 PDF 专业工具链
Mark2pdf 是一个强大的文档转换工具,旨在将 Markdown 文件转换为排版精美的 PDF 文档。它支持类似 Hugo/Jekyll 的工作区管理、Frontmatter 配置以及高度可定制的 Typst 模板系统。
⚠️ 注意: 本项目在 PyPI 上包名为
markdown2pdf,但命令行工具名为mark2pdf。
🚀 快速开始
1. 安装
pip install markdown2pdf
2. 初始化工作区 (推荐)
我们强烈建议使用工作区模式来管理你的文档项目:
mkdir my-docs && cd my-docs
mark2pdf init .
这将创建标准目录结构 (in/, out/, mark2pdf.config.toml 等)。
3. 开始转换
将 Markdown 文件放入 in/ 目录,然后运行:
mark2pdf convert
生成的 PDF 将出现在 out/ 目录中。
📚 文档导航
所有详细文档均位于 ./docs 目录:
- 入门必读: 💪 工作区使用指南 - 最佳实践、环境配置与工作流。
- 命令手册: 🛠 CLI 使用说明 - 所有命令参数详解。
- 配置参考: ⚙️ 配置指南 -
config.toml与 Frontmatter 参数全解。 - 模板语法: 🎨 模板语法指南 - 如何使用高级排版特性(NB模板)。
- 架构说明: 🏗 项目说明文档 - 开发者视角的设计文档。
- 常见问题: ❓ FAQ - 疑难解答。
✨ 核心特性
- 工作区管理: 自动管理输入输出路径、模板与资源。
- 智能图片处理: 自动下载远程图片、微信公众号图片修复、本地路径重写。
- 混合排版: 支持标准 Markdown 与 Typst 语法混合使用。
- 多模式转换: 支持单文件转换、目录合并转换、批量转换。
- 中文优化: 内置简繁转换、常用中文字体下载与管理。
- 稿纸模式: 特有的
gaozhi转换器,生成书写练习稿纸。
🐍 Python API
也可以在 Python 代码中直接使用:
from markdown2pdf import convert_file
# 单文件转换
convert_file("input.md", output_file="output.pdf")
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file yakultpdf-0.7.36.tar.gz.
File metadata
- Download URL: yakultpdf-0.7.36.tar.gz
- Upload date:
- Size: 3.2 MB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: uv/0.6.9
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
45dce71cae0b6272a4999aaf097d27ddc69f27242db05d1cfefc9ecc3fef4051
|
|
| MD5 |
e15087650ce5f38babe9166ca8771add
|
|
| BLAKE2b-256 |
bbd19ab7212648d1d2385beb15de2b02fea7141269314e01ba79f85e3e31ba3c
|
File details
Details for the file yakultpdf-0.7.36-py3-none-any.whl.
File metadata
- Download URL: yakultpdf-0.7.36-py3-none-any.whl
- Upload date:
- Size: 291.1 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: uv/0.6.9
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
f9b67c3534f5d78601056beaaa22ac55b5775924cf0ff3bed4bdd3557bae963b
|
|
| MD5 |
01be964fb7ecdd1f750cc7c6b18f1a30
|
|
| BLAKE2b-256 |
8dcdf5a7fa9198b3f8bbd7bcd22f86a5fec03626a171700e63b4e46c115b2c91
|