最适合的 PDF 转 Markdown 工具取决于你的工作方式。Python 开发者可以用 MarkItDown、Docling 等免费库。要在 GPU 上批量处理大量文件,Docling、Marker 或 MinerU 更合适。如果想要无需配置的 Windows 应用,可以用 MD Factory。Pandoc 能把许多格式转换为 Markdown,但不支持 PDF。
说明:MD Factory 是我们的产品。它处理 PDF 时使用下文对比的 Docling 和 Tesseract OCR 引擎。其他工具的信息均来自各自的 README、文档和许可证文件,核查日期为 2026 年 10 月 17 日。
对比表
本表依据各项目截至 2026 年 10 月的官方页面整理。这些工具更新很快,做决定前请查看链接页面。
| 工具 | 类型 | 扫描版 PDF | 运行环境 | 许可证 | 费用 |
|---|---|---|---|---|---|
| MarkItDown | Python 库和命令行 | 无内置 OCR;需要 LLM 插件或 Azure 服务 | Python 3.10 至 3.14 | MIT | 免费;Azure 调用另行计费 |
| Docling | Python 库和命令行 | 本地 OCR,可选多种引擎 | Windows、macOS、Linux;Python 3.10 或更高版本 | MIT;模型有各自的许可证 | 免费 |
| Marker | Python 库和命令行 | 使用自有模型的本地 OCR | Python 3.10 或更高版本,需 PyTorch;GPU、CPU 或 Apple Silicon | Apache 2.0;模型权重采用修改版 OpenRAIL-M 许可证 | 在权重许可证范围内免费;超出范围需商业许可证 |
| MinerU | Python 库、命令行和网页界面 | 本地 OCR | Windows、macOS、Linux;Python 3.10 至 3.14 | Apache 2.0 附加条款 | 低于许可证门槛时免费 |
| Pandoc | 命令行转换工具 | 无法读取 PDF | Windows、macOS、Linux | GPL 2.0 或更高版本 | 免费 |
| 在线转换工具 | 网站 | 取决于服务 | 浏览器 | 服务条款 | 免费或付费,视服务而定 |
| MD Factory | Windows 应用 | 内置本地 OCR | Windows 10 22H2 和 Windows 11,x64 | 专有 | 7 天免费试用,之后一次性购买 |
MarkItDown:Microsoft 的轻量转换工具
MarkItDown 是 Microsoft 推出的开源 Python 库和命令行工具。它可以把 PDF、Word、PowerPoint、Excel、HTML、EPUB、图片、音频等多种格式转换为 Markdown。需要 Python 3.10 至 3.14,README 建议把它安装在虚拟环境中。
pip install "markitdown[all]"
markitdown report.pdf -o report.md
它内置的 PDF 转换器读取 PDF 的文本层,根据按列对齐的词语生成 Markdown 表格,不运行版面模型或 OCR 模型。README 说明,其输出面向文本分析工具,未必适合需要高保真、供人阅读的转换。
扫描页需要借助扩展。同一仓库中的 markitdown-ocr 插件会把每张扫描页渲染成图像,通过兼容 OpenAI 的客户端发送给视觉模型。Azure Document Intelligence 选项则把 PDF 发送到 Microsoft 的云服务,每次调用都会计费。无论哪种方式,页面都会发送到你配置的模型或服务。
MarkItDown 采用 MIT 许可证,免费使用。
Docling:版面模型与本地 OCR
Docling 是一款开源转换工具,最初由 IBM Research 发起,现由 LF AI & Data Foundation 托管。它在每个 PDF 页面上运行机器学习模型,识别版面、阅读顺序和表格结构,然后导出 Markdown、HTML 或 JSON。它可在 Windows、macOS 和 Linux 上运行,需要 Python 3.10 或更高版本。
pip install docling
docling report.pdf --output markdown --image-export-mode referenced
模型会在首次使用时下载。对于无法联网的电脑,文档介绍了如何提前下载。OCR 在本地运行,可选择 EasyOCR、RapidOCR、Tesseract 等引擎。GPU 不是必需的:除 CPU 外,Docling 还可以使用 NVIDIA CUDA、Apple MPS 和 Intel XPU 设备。
示例中的最后一个选项会把图片另存为单独的 PNG 文件。不加该选项时,Docling 会把图片以 base64 文本嵌入 Markdown。
Docling 的代码采用 MIT 许可证,README 要求自行核查每个模型的许可证。其标准 PDF 流程中的版面模型和表格模型以 Apache 2.0 和 CDLA-Permissive-2.0 许可证发布。Docling 免费。
Docling 与 MarkItDown 对比
两者都免费、采用 MIT 许可证,并且一条 pip 命令即可安装。但它们读取 PDF 的方式不同。
| 对比项 | MarkItDown | Docling |
|---|---|---|
| 如何读取 PDF | 文本层和列对齐 | 版面、阅读顺序和表格结构模型 |
| 扫描页 | LLM 插件或 Azure | 本地 OCR |
| 安装内容 | 无 PyTorch,无版面或 OCR 模型 | PyTorch,以及首次使用时下载的模型 |
| 其他输入格式 | Office 文件、HTML、EPUB、图片、音频、ZIP 压缩包、YouTube 链接 | Office 文件、HTML、EPUB、图片、音频、LaTeX、电子邮件等 |
| 适用情形 | PDF 有文本层,且希望依赖尽量轻 | PDF 包含扫描页、多栏页面或需要保留的表格 |
如果拿不准,就用自己的 5 到 10 个 PDF 分别试试两者,并把生成的 Markdown 与原始页面对照。
Marker:GPU 批量处理,以及需要核查的模型许可证
Marker 是 Datalab 推出的开源转换工具。它把 PDF 和图片转换为 Markdown、JSON 或 HTML,安装额外依赖后还能处理 DOCX、PPTX、XLSX、HTML 和 EPUB。它需要 Python 3.10 或更高版本以及 PyTorch,可在 GPU、CPU 或 Apple Silicon 上运行。
pip install marker-pdf
marker_single report.pdf
marker pdfs --output_dir markdown
marker_single report.pdf --use_llm
OCR 由 Datalab 的 surya 模型完成,运行在 Marker 首次使用时启动的本地推理服务器上:NVIDIA GPU 上用 Docker 中的 vLLM,CPU 和 Apple Silicon 上用 llama.cpp。Docker 或 llama.cpp 需要自行安装。在 CPU 上,Marker 默认使用快速模式,只在遇到扫描页、乱码文本和公式时才调用模型。
可选的 LLM 模式(即示例中的最后一条命令)会把内容发送给 LLM,用于合并跨页表格、整理行内数学公式和提取表单值。默认使用 Gemini;Claude、兼容 OpenAI 的 API 以及通过 Ollama 运行的本地模型也可使用。你需要所选服务的 API 密钥,或一个正在运行的 Ollama 模型。
在工作中使用 Marker 之前,请先核查许可证。代码采用 Apache 2.0。模型权重采用修改版 AI Pubs Open RAIL-M 许可证:个人使用、研究,以及年收入低于 500 万美元且融资总额低于 500 万美元的组织可以免费使用。规模更大的组织,以及雇主提供与 Datalab 竞争的产品的任何人,都需要向 Datalab 购买商业许可证。完整条款见 模型许可证文件.
Marker 的 README 还公布了 Datalab 自己在 olmocr-bench 上的测试结果,这是一个包含 1,403 个 PDF 的公开基准;在这些测试中,Marker 的 balanced 模式在 GPU 上的得分高于 Docling 和 MinerU。我们没有复现这些测试。
MinerU:从 CPU 到 GPU 的质量档位
MinerU 由 OpenDataLab 团队开发。它可以把 PDF、图片和 Office 文件转换为 Markdown 等格式。第 4 版有四个质量档位,从用于快速预览的 flash 到用于疑难文档的 advanced。它可在 Windows、macOS 和 Linux 上运行,需要 Python 3.10 至 3.14;README 中把它安装在虚拟环境里。
pip install "mineru>=4.0,<5"
mineru-kit parse report.pdf -o report.md --tier standard
mineru telemetry disable
默认安装在 CPU 上运行。basic 档位需要约 0.8 GB 模型和 2 GB 内存;standard 和 advanced 档位需要约 2 GB 模型和 8 GB 内存。如果有显存至少 8 GB 的 NVIDIA GPU,安装 full 附加组件可以获得更高的吞吐量。OCR 在本地运行。
只有在你要求远程解析时,文档才会发送到 MinerU 的在线服务。README 还说明,MinerU 可能发送匿名使用遥测数据,其中不包含文档内容、文件名和路径。示例中的最后一条命令可以关闭遥测。
其许可证为 Apache 2.0 附加条款。月活跃用户超过 1 亿或月收入超过 2000 万美元的公司需要另行获得商业许可证,基于 MinerU 的在线服务必须注明使用了 MinerU。
Pandoc 无法读取 PDF
Pandoc 是一款免费的命令行工具,可在数十种文档格式之间转换,但无法读取 PDF。它的手册中没有把 PDF 列为输入格式,官方 FAQ 也说明无法用 Pandoc 转换 PDF。Pandoc 只能把 PDF 作为输出格式。来源: Pandoc 手册, Pandoc FAQ.
如果你手里有源文件而不只是 PDF,Pandoc 就很有用。它能读取 DOCX、PPTX、XLSX、EPUB、HTML、ODT、RTF 等格式,可安装在 Windows、macOS 和 Linux 上。在 Windows 上:
winget install --source winget --exact --id JohnMacFarlane.Pandoc
pandoc report.docx -o report.md
Pandoc 采用 GPL 2.0 或更高版本许可证,免费使用。
在线转换工具:无需安装,但文件会离开你的电脑
把 PDF 转换为 Markdown 的网站无需安装,在任何浏览器中都能使用。对于一份本来就可以公开的文档,这样做就够了。
代价是失去控制权。PDF 会上传到另一家公司的服务器,文件保存多久、谁能访问、扫描件是否经过 OCR,都取决于该服务。上传合同、医疗或财务记录、客户文件之前,请先阅读该服务的隐私政策,或者改用在你电脑上运行的工具。
本地方案见我们的指南: 不上传文件也能转换文档.
MD Factory:把 Docling 和 Tesseract 做成 Windows 应用
MD Factory 是我们的产品,阅读本节时请考虑这一点。它是 Microsoft Store 上的 Windows 应用,可在你的电脑上把 PDF、DOCX、PPTX、XLSX、HTML、TXT、EPUB、CSV、EML、FB2 和 MOBI 文件转换为 Markdown。
处理 PDF 时,MD Factory 运行 Docling 和 Tesseract OCR 引擎。其他格式由应用自带的转换器处理。如果你熟悉 Python,Docling 和 Tesseract 是免费的,并且承担了 PDF 转换的核心工作。MD Factory 在此基础上补上安装配置和工作流程:
- 只需安装这个应用。版面模型、表格模型和 OCR 语言数据都已随附,因此无需配置 Python,之后也不用再下载任何内容。
- MD Factory 在你的电脑上识别扫描版 PDF,可自动检测文字系统,也可由你选择 OCR 语言。
- 添加文件或包含子文件夹的整个文件夹后,转换会立即开始。
- 每个 Markdown 文件都保存在源文件旁边,图片保存在旁边的文件夹中。原始文件保持不变。
- 每个文件最终会显示已完成、需要检查或失败。当某页的 OCR 置信度较低或没有提取到文本时,MD Factory 会标记为需要检查。
这些库在四个方面更强:
- MD Factory 没有命令行或 API,因此无法在脚本或服务器流水线中运行。
- 它只能在 Windows 10 22H2 和 Windows 11(x64)上运行。这些库还能在 macOS 和 Linux 上运行。
- 它在 CPU 上转换,不使用 GPU。PDF 逐个处理,其他格式并行处理。Docling、Marker 和 MinerU 可以使用 NVIDIA GPU。
- 7 天免费试用结束后,MD Factory 需一次性购买。这些库是免费的。
如何选择
如果你写 Python,而且 PDF 有文本层、同时还要转换 Office 文件或网页,可以先试 MarkItDown。需要本地 OCR、表格或跨栏的正确阅读顺序时,再换用 Docling。两者都免费。
如果你运行大规模处理流水线,可以考虑 Docling、Marker 和 MinerU:三者都能转换整个文件夹,并且可以使用 NVIDIA GPU。先用自己的文档样本测试;如果是商业用途,请核查 Marker 的模型许可证和 MinerU 的门槛。
如果你使用 Windows,又不想做任何配置,MD Factory 在 7 天免费试用后即可转换文件和文件夹(包括扫描件),无需命令行。如果你有 Word 或 EPUB 源文件,并且不介意使用命令行,Pandoc 是免费的。
如果文档属于机密,请选择在本地运行的工具,避免使用在线转换工具。使用这些库时,请检查会把数据发送到电脑以外的选项:MarkItDown 的 Azure 和 LLM 设置、Marker 的 LLM 模式、MinerU 的远程解析和遥测。MD Factory 在你的电脑上处理文件。
无论选择哪种工具,都请把几页 Markdown 与原文对照,尤其是表格、多栏页面和扫描页。
相关指南: 为 RAG 准备 PDF, 把扫描版 PDF 转换为 Markdown.