要将扫描 PDF 转为 Markdown,只需把它添加到 MD Factory。应用会找出文字仅以图片形式存在的页面,在电脑上用内置 OCR 识别文字,并在 PDF 旁边保存一个 Markdown 文件。

OCR 能很好地处理干净的印刷页面,但遇到褪色、歪斜或手写的页面就会出错,所以要预留时间对照扫描件检查结果。下面介绍与普通 PDF 不同的地方:OCR 语言、“需要检查”状态、表格、手写内容和扫描仪设置。

深色石质桌面上的一叠扫描纸页,以及几张用夹子夹住的纸。
在 OCR 读取之前,扫描页面上的文字只是图片。

转换扫描 PDF

  1. 打开 MD Factory。
  2. 点击“添加文件”并选择 PDF,或将 PDF 拖到窗口中。要转换整个扫描件文件夹(包括子文件夹),请点击“添加文件夹”。
  3. 转换会立即开始。处理第一个 PDF 时,在处理页面之前,该行会显示“加载 PDF 引擎”。
  4. 等待该行显示结果:“已完成”“需要检查”或“失败”。
  5. 双击该行中的结果路径,即可打开 Markdown 文件。

Markdown 文件与 PDF 同名,保存在同一个文件夹中。如果页面中有照片或图表等图片,它们会放入旁边的文件夹。PDF 本身不会被修改。

Scans/
  lease-agreement.pdf
  lease-agreement.md
  lease-agreement_images/

PDF 会逐个转换,队列中其他类型的文档则同时处理。应用只读取本地驱动器上的文件。如果扫描仪把文件保存到网络文件夹,请先将 PDF 复制到电脑上。

应用如何判断页面是否需要 OCR

当页面上的文字只以图片形式存在时,就需要 OCR。MD Factory 会检查每个 PDF 中有没有可选择的文字,然后从两种方式中选择一种:

  • 如果没有任何页面含有可选择的文字,整个文件就被视为扫描件,每一页都整页进行 OCR 识别。
  • 如果部分页面有文字,应用会原样保留这些文字,只对以图片形式出现的文字进行 OCR,例如打字报告中夹着的一页扫描件。

混合型 PDF 无需任何准备。在我们的测试中,一个三页的文件(首页和末页是打字文本,中间一页是扫描件)转换成了一个 Markdown 文件,包含全部三页的文字。

MD Factory 只接受 PDF 格式的扫描件。JPG、PNG 或 TIFF 等图片文件会被列为已跳过,所以请将扫描应用设置为保存 PDF。

如果 PDF 的每一页都已有可选择的文字,就用不到 OCR。 PDF 转 Markdown 指南 介绍了这类文件的转换方法。

选择 OCR 语言

每个 PDF 开始时,OCR 语言都设为“自动(脚本检测)”。在此模式下,应用会判断每页使用哪种文字,例如拉丁字母、西里尔字母、希腊字母或阿拉伯字母,然后用对应这种文字的模型读取页面。我们在 300 dpi、12 磅字号的干净测试页上测试时,“自动”模式识别英文页面没有出错,识别俄文页面时每一百个字符错不到一个。

当 PDF 的结果为“需要检查”或“失败”时,再选择语言:

  1. 队列处理完成后,点击该文件所在行的状态。随即会打开一个窗口,列出发现的问题。
  2. 打开“OCR语言”列表,选择文档的语言。
  3. 点击“重试”。

没有提前选择语言的设置。每个新的 PDF 都从“自动”开始,下次重试时,会预先选中您上次选择的语言。

如果一页上的两种语言使用同一种文字,例如英语和德语,“自动”模式可以正常处理。

如果两种文字不同,“自动”会把整页当作其中一种来读取。对大多数文字来说,对应的模型也能识别英文,所以希腊文或阿拉伯文页面上的英文术语通常能正确识别。西里尔字母是例外:在我们的测试中,一个同时有英文和俄文的页面得到了“需要检查”。请用该页的主要语言重试,然后对照扫描件检查另一种文字的单词。

扫描件显示“需要检查”是什么意思

“需要检查”表示应用已保存 Markdown 文件,但发现了值得检查的问题。对于扫描件,点击状态打开的窗口通常会显示以下消息之一,括号中是页码:

提示信息情况处理方法
OCR 无法读取本文档的部分内容。选择一种语言并重试。该页识别出的单词平均置信度低于 75%,或者页面有一部分无法读取。选择文档的语言后重试。如果语言已经正确,请对照扫描件检查该页,或重新扫描。
页面没有提取的文本。根据来源进行检查。该页没有识别出任何内容。空白页也会出现这条消息。在 PDF 中查看该页。如果页面上有文字,请重新扫描得更清晰一些。

如果所有页面都没有识别出文字,文件会被标记为“失败”,窗口会建议明确指定 OCR 语言后重试。

“已完成”并不代表每个字符都正确。检查看的是整页的平均值,所以如果页面其他部分都很干净,读错一个字符不会触发提示。在上文提到的干净俄文测试页上,数字 1248 被识别成了 124%。

在依赖这些文字之前,请将要用到的每一项都与扫描件比对:姓名、日期、金额,以及账号或证件号码。

歪斜、有噪点和褪色的页面

轻微倾斜和少量斑点不成问题。在我们的测试中,一张倾斜约一度、略有模糊并布满细小斑点的测试页,转换结果为“已完成”。

质量差的扫描件会被标记出来。一张模糊、低对比度、以低分辨率扫描且倾斜 3.5 度的页面,得到了“需要检查”。

横放或倒置的页面,请在转换前用扫描应用或 PDF 编辑器旋转过来。如果页面得到“需要检查”是因为质量而不是语言,请按下面的设置重新扫描。

扫描页面中的表格

MD Factory 也会在扫描页面中查找表格,并将其写成 Markdown 表格。但每个单元格仍然是 OCR 识别的文字,而且表格很容易掩盖错误:一列数字中错了一位,看起来和正确的数字一样可信。

请逐行对照扫描件检查表格。把某一列加起来,与印刷的合计核对。如果数值跑到了错误的行或列,请在 Markdown 中改正。PDF 指南中有 一个示例,演示如何恢复丢失了行的表格.

手写内容

MD Factory 识别的是印刷和打字的文字,并不适用于手写内容:手写笔记、页边批注和填写过的表单字段,可能会变成乱码或直接缺失。

凡是手写的内容,都不要依赖转换后的文字。请以扫描件为准,自己把这些部分打出来。

怎样扫描,OCR 效果更好

识别质量取决于图像。 Tesseract 的 OCR 质量改进指南 列出了哪些因素会让图像难以识别。就扫描而言,可以归结为五点:

  • 以 300 dpi 或更高的分辨率扫描。该指南指出,分辨率至少为 300 dpi 时识别效果最好。
  • 把纸张端正地放在玻璃板上。页面一旦倾斜,就很难分辨出一行行文字。
  • 保持光线均匀,用手机拍摄页面时尤其要注意。阴影和明暗不均的背景会让文字更难与纸张区分。
  • 盖上扫描仪盖板,或裁掉边缘。扫描页面周围的黑边可能被识别成多余的字符。
  • 使用手头最干净的副本。斑点和其他噪点会降低准确率。

每份文档单独保存为一个 PDF。MD Factory 为每个 PDF 生成一个 Markdown 文件,所以把一叠互不相关的文件扫描进同一个文件,就会得到一篇很长的笔记。

身份证件、合同和病历

扫描件往往涉及个人信息:护照、合同、银行对账单、病历。MD Factory 在您的电脑上进行识别,不会上传 PDF 或识别出的文字。

Markdown 文件保存在扫描件旁边。原本锁在图片里的文字,现在成了纯文本,任何能访问该文件夹的人都可以阅读和搜索。如果该文件夹同步到 OneDrive 或其他云服务,Markdown 文件也会一起同步。我们的 无需上传即可转换文档的指南 介绍了如何查看文件夹的存储位置。

对于法律、医疗和财务文件,扫描件仍然是原件。请把 Markdown 当作工作副本,在据此采取行动之前,对照扫描件核对每一个数字。不再需要时,删除 Markdown 文件及其图片文件夹。