从在线工具到命令行,找到最适合你的 Markdown 转 PDF 方案

引言:为什么 Markdown 转 PDF 比较麻烦?

说实话,用 Markdown 写文档确实爽,语法简单、专注内容、版本控制友好,程序员和技术写作者几乎人手一份。但问题也来了——写好的文档怎么分享给同事?怎么打印?怎么保证对方看到的效果和你的一致?

Markdown 转 PDF 这个需求,看起来简单,实际坑不少。

网上搜一下,方法一大堆:有的要安装软件,有的要敲命令行,有的在线工具转出来格式全乱。对于只是想快速把笔记转成 PDF 的人来说,选择成本太高了。

这篇文章给你最直接的答案,我会介绍 3 种主流的 Markdown 转 PDF 方法,从最简单的在线工具,到开发者常用的编辑器插件,再到功能最强的命令行工具。不管你是偶尔用一次,还是需要频繁转换,都能找到适合自己的方案。

三种主流方法一览

在深入教程之前,先快速了解一下这 3 种方法的特点:

方法使用难度核心特点适合人群
md-to.com⭐ 最简单在线工具,无需安装普通用户、偶尔使用
VS Code + 插件⭐⭐ 中等编辑器内一键导出开发者、频繁使用
Pandoc⭐⭐⭐ 复杂功能最全,支持高级排版技术用户、学术写作

我的建议

  • 如果你只是偶尔转个文档,直接用 md-to.com,打开浏览器就能用,效果还挺好。
  • 如果你已经在用 VS Code 写 Markdown,可以装个插件,边写边导出更方便。
  • 如果你需要复杂的排版(比如目录、页眉页脚、数学公式),再考虑 Pandoc。

下面说说每种方法具体怎么用。


方法一:MD-To.com 推荐新手)

MD-To.com 是专门做 Markdown 转换的在线工具,支持转 PDF、Word、图片这些格式。它最大的优点就一个字:简单

不用注册,不用装软件,打开网页直接就能用。

工具特点

  • ✅ 无需安装:任何设备只要有浏览器就能用
  • ✅ 中文友好:界面简洁,转换效果对中文支持好
  • ✅ 格式保留:表格、代码块、列表等 Markdown 元素都能正确渲染
  • ✅ 免费使用:基础功能完全免费

操作步骤

第 1 步:访问网站

打开浏览器,访问 https://md-to.com/zh-cn/markdown-to-pdf/

你会看到一个简洁的编辑界面,左边是输入区,右边是预览区。

第 2 步:输入 Markdown 内容

有两种方式:

  • 直接粘贴:把 Markdown 文本复制到左侧编辑框
  • 上传文件:点击上传按钮,选择本地的 .md 文件

Markdown 转 PDF

编辑和预览界面

第 3 步:预览效果

输入内容后,右侧会实时显示预览效果。你可以检查:

  • 标题层级是否正确
  • 表格渲染是否正常
  • 代码块是否有语法高亮
  • 图片是否正常显示(如果是在线图片链接)

第 4 步:下载 PDF

确认效果没问题后,点击下载按钮,PDF 文件就会保存到你的电脑。

整个过程不用 1 分钟,非常顺畅。

下载 PDF

效果展示

我测了一下, md-to.com 对这些 Markdown 元素支持都不错:

元素类型支持情况说明
标题✅ 完全支持H1-H6 层级清晰
列表✅ 完全支持有序/无序列表都能正确显示
表格✅ 完全支持边框和对齐效果保留
代码块✅ 完全支持语法高亮效果不错
引用块✅ 完全支持样式美观
图片⚠️ 部分支持在线图片可以,本地图片需上传
数学公式⚠️ 有限支持基础公式可以,复杂公式可能有问题

使用技巧

1. 图片处理

如果你的 Markdown 里引用了本地图片,建议先上传到图床(如 GitHub),使用在线链接。直接引用本地路径在转换时可能无法正常显示。

2. 文件大小限制

虽然 md-to.com 没有明确说明文件大小限制,但建议单个文件不要超过 10MB。如果文档特别大,可以分成多个小文件处理。

3. 样式自定义

md-to.com 使用的是默认样式,简洁清晰。如果你需要自定义 PDF 样式(比如换字体、改颜色),可以考虑后面介绍的 Pandoc 方法。

选择不同的文档样式


方法二:VS Code Markdown PDF 插件(开发者推荐)

如果你平时就在用 VS Code 写 Markdown,那装个插件是最方便的方案。写完文档直接导出 PDF,不用切换工具。

插件介绍

Markdown PDF(插件 ID: yzane.markdown-pdf)是一个功能强大的 VS Code 扩展,支持:

  • 将 Markdown 转为 PDF、HTML、PNG、JPEG
  • 语法高亮、Emoji 支持
  • 自定义 CSS 样式
  • 支持 Mermaid 流程图

安装步骤

  1. 打开 VS Code
  2. 按 Ctrl+Shift+X 打开扩展面板
  3. 搜索 “Markdown PDF”
  4. 点击安装(插件会自动下载所需的 Chromium 组件)

使用方法

方式一:命令面板(推荐)

  1. 打开 Markdown 文件 (.md)
  2. 按 F1 或 Ctrl+Shift+P 打开命令面板
  3. 输入 markdown-pdf: Export
  4. 选择导出格式:Export to PDF

方式二:右键菜单

  1. 在编辑器中右键点击 Markdown 文件
  2. 选择 Markdown PDF: Export (pdf)
  3. PDF 文件将自动生成在当前文件同级目录

方式三:自动转换

在 settings.json 中添加:

{
 "markdown-pdf.convertOnSave": true
}

每次保存 Markdown 文件时,会自动生成 PDF。

优缺点

优点

  • 与开发工作流集成,不用切换工具
  • 一键导出,效率高
  • 支持自定义 CSS 样式

缺点

  • 需要安装 VS Code(如果不用 VS Code 就没意义了)
  • 依赖 Chromium 组件,某些版本可能有兼容性问题
  • 复杂排版支持有限(不如 Pandoc)

方法三:Pandoc(功能最强)

Pandoc 是文档转换界的"瑞士军刀",功能很强大。Markdown 转 PDF、Word、HTML、LaTeX这些都能搞定,还支持几十种其他格式。

适合谁用?

  • 需要复杂的 PDF 排版(目录、页眉页脚、数学公式)
  • 需要批量转换多个文件
  • 需要自定义 PDF 样式
  • 学术写作(支持 LaTeX 公式)

安装步骤

Pandoc 需要安装两个东西:

1. 安装 Pandoc

从官网下载安装包:https://github.com/jgm/pandoc/releases

或者用包管理器:

# macOS
brew install pandoc

# Windows
choco install pandoc

2. 安装 LaTeX 发行版

Pandoc 生成 PDF 需要 LaTeX 支持,推荐安装TinyTeX(轻量版):

# 安装 TinyTeX
curl -sL "https://yihui.name/gh/tinytex/tools/install-unx.sh" | sh

Windows 用户可以从 Getting MiKTeX 下载 MiKTeX。

基础用法

简单转换(英文文档)

pandoc input.md -o output.pdf

中文文档(关键)

pandoc input.md -o output.pdf \
  --pdf-engine=xelatex \
 -V CJKmainfont="Microsoft YaHei"

带目录、代码高亮

pandoc input.md -o output.pdf \
  --pdf-engine=xelatex \
 -V CJKmainfont="Microsoft YaHei" \
  --toc \
 --highlight-style=tango

优缺点

优点

  • 功能最强大,支持复杂排版
  • 完全免费开源
  • 支持批量转换
  • 可自定义模板

缺点

  • 安装配置较复杂,尤其是中文支持
  • 需要命令行操作,对新手不友好
  • LaTeX 环境安装包体积大(几百 MB)

如何选择?按场景推荐

看完上面的介绍,你可能还是有点纠结:到底选哪个?

别担心,我直接按使用场景告诉你怎么选:

场景 1:偶尔使用(推荐 md-to.com )

特征

  • 一个月转不了几次 PDF
  • 不想装软件,用完即走
  • 对格式要求不高,能看就行

推荐理由: md-to.com 就是为你设计的。打开浏览器,粘贴内容,下载 PDF,完事。不用注册,不用安装,跨平台(Windows、Mac、手机都能用)。

场景 2:开发者(推荐 VS Code 插件)

特征

  • 已经在用 VS Code 写文档
  • 需要频繁转换
  • 希望工作流一体化

推荐理由: 装个插件,写完直接导出,不用切换工具。配置好后一键生成,效率最高。

场景 3:学术写作(推荐 Pandoc)

特征

  • 需要目录、页眉页脚
  • 有数学公式
  • 对格式要求高

推荐理由: Pandoc 是唯一能满足这些需求的工具。虽然配置麻烦,但一旦配好,生成的 PDF 质量是最高的。

快速决策表

你是谁使用频率推荐方法
普通用户偶尔http://md-to.com
开发者频繁VS Code 插件
学术写作者经常Pandoc
需要批量处理-Pandoc

常见问题解答

Q1:在线工具安全吗?我的文档会被保存吗?

一般来说,纯前端处理的在线工具(比如 md-to.com )只是在你的浏览器里面处理,不会保存你的文档。

但要是处理敏感文档(比如公司机密、个人隐私),最好用本地工具(VS Code 插件或 Pandoc)。

Q2:转换后的 PDF 中文显示正常吗?

md-to.com 和 VS Code 插件对中文支持都很好。Pandoc 需要额外配置中文字体(使用 --pdf-engine=xelatex -V CJKmainfont="字体名")。

Q3:可以批量转换多个文件吗?

md-to.com 和 VS Code 插件不支持批量转换。Pandoc 可以用脚本实现批量转换:

for file in *.md; do pandoc "$file" -o "${file%.md}.pdf"; done

Q4:免费工具有什么限制?

  • md-to.com 目前所有的功能都是免费的
  • VS Code 插件:完全免费
  • Pandoc:完全免费开源

总结

说了这么多,其实选择就这么简单:

  • 新手/偶尔用:直接打开 md-to.com ,粘贴内容,下载 PDF,搞定。
  • 开发者:装个 VS Code Markdown PDF 插件,边写边导出。
  • 高级需求:折腾一下 Pandoc,配置麻烦,但功能最强。

如果你想现在就试试,建议从 md-to.com 开始。不用装任何东西,打开浏览器就能用。不够用再考虑别的。

希望这篇文章帮你搞定了 Markdown 转 PDF 的问题。有其他疑问,欢迎在评论区留言。


参考资料

  1. md-to.com 官网 Markdown 转 PDF
  2. VS Code Markdown PDF 插件
  3. Pandoc 官方文档
Logo

AtomGit 是由开放原子开源基金会联合 CSDN 等生态伙伴共同推出的新一代开源与人工智能协作平台。平台坚持“开放、中立、公益”的理念,把代码托管、模型共享、数据集托管、智能体开发体验和算力服务整合在一起,为开发者提供从开发、训练到部署的一站式体验。

更多推荐