我是怎么把 PDF 转成 Markdown 的

我自己每天在用的 PDF 转 Markdown 流程,以及扫描版、双栏、表格炸掉这些坑怎么处理。

Ben
Ben
2026年3月19日

我是怎么把 PDF 转成 Markdown 的(以及要小心什么)

把我自己的工作流写下来,下次有人问,我直接发链接就行。

下面先讲常用情况(普通 PDF,最快路径),再讲会遇到的几个坑:扫描 PDF、双栏排版、表格炸掉、还有几个我学到的清理小技巧。

最快路径

九成的 PDF 都是"正常"的——别人在 Word 或 LaTeX 里写完导出,文字能选中。这种情况:

  1. 浏览器开 PDF2MD。
  2. 把文件(或者一次二十个)拖进页面。
  3. 等。50 页论文大概 4 秒,300 页报告可能要一分钟。
  4. 复制结果,或者批量的话点 "Download all as ZIP"。

完了。我每天要做好几次,要么是 API 文档要喂给 Claude Code,要么是调研资料要进 Obsidian。

之所以这么���,是因为整个过程在浏览器里靠 PDF.js 跑。没有上传、没有服务器排队、不用等谁的 API 醒来。代价是大批量任务会瞬间吃掉你的 CPU——五十个文件批量转,我会启动后切到别的标签页等。

最快路径搞不定:扫描版 PDF

"为什么转出来是空的",最常见的原因是扫描版。打开 PDF 试着用鼠标选一句话,选不中,就说明文件里没有真文字,是图。PDF2MD 没有 OCR,所以输出一个空 Markdown 文件,或者几行空白。

两条路:

  • 先 OCR,再转。 Mac 上用 Preview 的"识别文字"(Tools → Recognise Text)重存一份,或者用自带 OCR 的 Marker。然后 PDF2MD 就能正常处理。
  • 少数情况付钱。 一份扫描版孤本、不想装东西,Nanonets 或 Adobe 都能 OCR + 转换。涉及敏感内容我不会走这条路。

一眼判断:在阅读器里能选中文字就是原生 PDF,选不中就是扫描版。

双栏排版

学术论���和大部分设计杂志用双栏或三栏。PDF 里的文字是按绝对坐标定位的,意思是粗暴的提取器会横着读:"左栏第一句、右栏第一句、左栏第二句……"——根本读不通。

PDF2MD 会尝试识别栏间空隙,按列读。大部分时候管用,但你看到双栏 PDF 输出乱序,就是这里出了问题。两个绕开办法:

  • 一页一页转,再拼起来。有时候列检测在某一页翻车,其它页正常。
  • 这份文档干脆切到 Marker。它的版面模型识别栏更稳。

表格转坏了

这是我收到最多的吐槽。原因前面讲过:PDF 里的表格不是真的"表格",没有"这是单元格"的元信息,全靠转换器猜。

我自己的修复流程:

  1. 转完先看一眼。如果结构对、只是对齐难看,不用管——Markdown 渲染器不在乎表格里的空格对齐。
  2. 如果出现单元格被并到不同行,回去看原 PDF,检查那个单元格内容是不是换了行。换行最容易让提取器翻车。最快的修法是手动重打那一行。
  3. 整张表全没了,就直接从 PDF 里框选表格区域,复制粘贴到支持"从剪贴板导入表格"的 Markdown 编辑器(Obsidian 加插件,或者 Typora)。剪贴板有时候能保留结构。

我已经放弃指望任何工具完美还原表格。这是 PDF 解析里至今没解决的部分。

我的清理流程

不管用哪个工具,转完我都会花 60 秒清理:

  • 把连续三个以上空行替换成两个,整理空行节奏。
  • 看一眼标题层级。原文 H1 转出来变 H3,或者反过来,时有发生,手工调一下。
  • 删页码。PDF 经常每页带"Page 12 of 47"这种页眉,转换器照单全收。我习惯 grep 出来删掉。
  • 检查连字。某些 PDF 把"fi""fl"编码成单个 Unicode 字符(fi、fl),不同转换器要么把它们留在输出里,要么直接吃掉。PDF2MD 会自动归一化,用别的工具就要顺手 grep 一下。

几个具体场景

进 Claude Code 或别的大模型。 Markdown 是对的格式。Claude 在 Markdown 里读结构比读纯文本或 HTML 都强。我贴 API 文档前先用 PDF2MD 转一遍,写出来的代码质量肉眼可见好。一个小 tip:如果 PDF 开头有一大堆目录,贴之前删掉,省 token、信息量为零。

Obsidian / Logseq 笔记。 原生支持 Markdown,没什么要折腾的。注意 wikilink:PDF2MD 输出的是标准 Markdown 链接,要双方括号 [[]] 风格的话顺手 find-replace 一下。

GitHub README 和 wiki。 也是原生 Markdown,但 GitHub Flavored Markdown 略不同。表格、代码块都没问题。唯一会废的是数学公式——如果你的 PDF 有方程要在 GitHub 上渲染,得过一道 KaTeX。

贴进 Notion。 Notion 接受 Markdown 粘贴,但会自作主张做一些重格式化。标题、表格能保留,链接格式偶尔会怪。基本能用,我贴完会扫一眼。

什么时候放弃转换器

有时候源 PDF 本身就烂。自动生成的表单、老扫描书、定位歪掉的演示文稿导出。一年下来我学会了识别气味——同一份文件让两个不同的转换器都吐出"不一样但同样烂"的结果,就是它了。这种情况下我要么手打需要的那部分(通常就一两页),要么找原文——大部分论文 arXiv 上有 LaTeX,大部分政府报告有 HTML 版,大部分产品文档有官网。PDF 很少是唯一形式。

工作流就这么些。如果你撞到 PDF2MD 处理得有意思的烂 PDF,发到 [email protected],我收着。

最后更新:2026 年 3 月 19 日

我是怎么把 PDF 转成 Markdown 的 | PDF 转 Markdown 在线转换器 | 快速、安全、PDF 转 MD | pdf2md.net