用途:把 Markdown 文件转换为带中文字体支持和可定制样式的 PDF,适合将 .md 文档转为可打印或适合阅读的 PDF。
主要能力:内置默认样式(复古纸张:暖米色背景、深棕文字、中文衬线字体、行高 1.8、段首缩进 2em、页脚页码);assets/ 提供两种预设样式——vintage-paper.css(适合故事与文学)和 modern-clean.css(适合技术文档);支持自定义 CSS 与自定义标题;提供 Python API convert_md_to_pdf(input_path, output_path, custom_css, title)。中文字体回退链为 Noto Serif SC、Source Han Serif SC、Songti SC、STSong、SimSun,需系统至少安装其中一种。
使用方式:脚本使用 uv 内联元数据,无需手动安装依赖。基本转换:uv run scripts/md2pdf.py input.md output.pdf;指定样式:uv run scripts/md2pdf.py input.md output.pdf --style assets/vintage-paper.css;指定标题:uv run scripts/md2pdf.py input.md output.pdf --title "Chapter Title"。也可 chmod +x scripts/md2pdf.py 后直接运行 ./scripts/md2pdf.py input.md output.pdf。macOS 上脚本会自动配置 Homebrew 库路径。
限制与依赖:依赖 WeasyPrint 系统库,macOS 需 brew install pango,Ubuntu/Debian 需 sudo apt install libpango-1.0-0 libpangocairo-1.0-0;缺少中文字体时 macOS 可 brew install font-noto-serif-cjk-sc,Ubuntu/Debian 可 sudo apt install fonts-noto-cjk。其他平台、收费与价格信息暂未提供。