为什么要转成 PDF?
Markdown 很好,但接收方不一定有查看器,直接发 .md 文件对方可能打不开或看到一堆符号。PDF 则是跨平台通用的格式:任何设备打开排版都一致,适合正式分享、打印、归档。
方法一:用 Markdown 查看器直接导出(最简单)
这是大多数人最该用的方法。以 mdview 为例:
- 用 mdview 打开 .md 文件,确认渲染效果;
- 在预览窗口右键 → 导出 PDF(或调用系统的"打印 → 另存为 PDF");
- 选择保存位置,完成。
整个过程本地完成,文件不上传任何服务器,对包含敏感内容的文档很友好。Typora 等编辑器也提供"导出 → PDF"功能,原理类似。
最快路径:装好 mdview 后,双击 .md 打开 → 右键导出 PDF,两步搞定,不用记任何命令。
方法二:在线转换工具
浏览器搜索"Markdown to PDF",能找到不少在线转换网站:上传或粘贴 Markdown,下载生成的 PDF。
- 优点:免安装,跨平台;
- 缺点:要把内容上传到第三方服务器,不适合敏感文档;本地图片可能丢失;转换样式不可控。
方法三:Pandoc 命令行(进阶)
对熟悉命令行的用户,Pandoc 是强大的"文档转换瑞士军刀"。装好 Pandoc 后,一条命令完成转换:
pandoc 文档.md -o 文档.pdf
注意:导出 PDF 通常还需要额外安装 LaTeX 引擎(如 xelatex),配置相对复杂。适合批量转换、自动化脚本的场景,普通用户不必折腾。
方法四:VS Code 插件
VS Code 里装一个 Markdown PDF 扩展,能在编辑器里直接右键导出 PDF。适合本来就用 VS Code 写文档、又不想切换工具的开发者。
四种方法对比
| 方法 | 难度 | 隐私 | 本地图片 | 样式可控 | 适合人群 |
|---|---|---|---|---|---|
| 查看器导出 | 极简 | 本地 | ✓ | 中 | 所有人 |
| 在线转换 | 简单 | 上传第三方 | ✕ | 低 | 临时、非敏感 |
| Pandoc | 较高 | 本地 | 需配置 | 高 | 进阶 / 批量 |
| VS Code 插件 | 中等 | 本地 | ✓ | 中 | 开发者 |
导出 PDF 前的排版美化建议
- 规范标题层级:用
#、##、###层层递进,PDF 会自动生成清晰的结构; - 表格别太宽:超宽表格在 PDF 里会被挤压或截断,精简列数;
- 图片控制宽度:超大图片可能撑破页面,适当裁剪;
- 代码块别过长:超长代码块注意分页,避免从中间断开。
总结
对 90% 的人来说,"用查看器打开 → 右键导出 PDF"就是最优解:简单、本地、隐私安全。Pandoc 和插件是给有特殊需求的人准备的进阶选项。
关于排版:不同工具导出的 PDF 样式会有差异(字体、页边距、代码高亮)。如果对外观要求高,建议先用 mdview 预览确认,再导出,效果最直观。