Tutorial

如何对扫描的PDF进行OCR识别并使其可搜索

了解 OCR(光学字符识别)的工作原理、影响准确度的因素,以及如何使用 LuraPDF 基于浏览器的 OCR 工具将扫描的 PDF 转换为可搜索、可复制粘贴的文档。

LuraPDF Team
LuraPDF Team

Editorial & Technical Team · May 4, 2026 · 11 min read

扫描版PDF是文档的数码照片,页面以图像形式呈现。您无法选择文本、搜索单词、复制句子,也无法将其导入任何文本处理工具。就信息检索而言,扫描版PDF本质上是不透明的。

光学字符识别 (OCR) 技术通过分析图像并构建一个覆盖在图像内容之上的文本层来解决这个问题。最终生成的 PDF 文件看起来与原始扫描件完全相同,但其中包含一个不可见的文本层,使得所有内容都可选中、可搜索和可复制。

OCR工作原理

LuraPDF 使用 Tesseract.js,它是 Tesseract 的浏览器编译版本。Tesseract 是最精确的开源 OCR 引擎之一,由 Google 维护,最初由 HP Labs 开发。Tesseract 使用基于 LSTM 的神经网络模型,该模型已在数百万页涵盖数十种语言的文档上进行训练。

OCR流程:

  1. 页面渲染:每个 PDF 页面都以高分辨率(300+ DPI 以获得最佳精度)渲染成画布图像。
  2. 预处理:图像增强——二值化、降噪、校正倾斜(矫正旋转的扫描图像)
  3. 布局分析:检测文本区域、列、表格和非文本元素
  4. 字符识别:神经网络对分割后的文本区域中的每个字符进行分类
  5. 后处理:语言模型评分以消除相似字符的歧义(例如,“l”与“1”,“O”与“0”)
  6. PDF写入:识别出的文本将以不可见的文本层形式嵌入,并精确地放置在相应的视觉字符上方。

正是这层不可见的文本层使得搜索结果可搜索。页面外观与原始扫描图像保持一致——您看到的正是扫描的内容,但其下方的文本现在是机器可读的。

影响OCR准确率的因素

准确度随输入质量的变化而显著变化:

扫描分辨率

**300 DPI 是确保可靠识别率的最低分辨率。**低于 200 DPI 时,字符识别率会大幅下降。如果您要扫描文档进行 OCR 识别,请务必使用 300 DPI 或更高的分辨率进行扫描。

扫描分辨率为 150 DPI 或更低的文档应先以更高分辨率重新扫描,然后再进行 OCR 识别。无论 OCR 引擎多么先进,对低分辨率扫描件进行 OCR 识别都会产生较差的结果。

字体和打印质量

  • 印刷文本(激光打印机输出、排版书籍):原件清晰时准确率达 98–99%
  • 高质量手写,字迹清晰:85–95%
  • 文字模糊或褪色:80–95%,具体取决于对比度
  • 复写纸:60–85%
  • 旧报纸/打字机:扫描清晰,保存率达90-95%
  • 草书:40-70% — 神经网络 OCR 对草书的识别能力较差

页面方向

页面严重倾斜或旋转会影响识别准确率。大多数 OCR 引擎(包括 Tesseract)都能自动检测并校正轻微旋转(约 10 度以内)。对于严重旋转的页面,应先使用 Rotate PDF 手动校正。

### 语言

Tesseract 支持 100 多种语言。LuraPDF 的 OCR 工具可自动检测英文。对于非拉丁字母或非英文文档,选择语言可显著提高识别准确率。

如何使用 LuraPDF 对 PDF 文件进行 OCR 识别

  1. 打开 OCR 工具:导航至 LuraPDF OCR PDF
  2. 上传扫描的PDF文件:拖放您的文件
  3. 选择语言(如果不是英语):选择文档的主要语言。
  4. 点击“运行 OCR”:处理过程会在浏览器中逐页进行。所需时间取决于文档长度——在现代计算机上,扫描 20 页文档通常需要 30-90 秒。
  5. 下载可搜索的 PDF 文件:输出结果为包含原始扫描图像和嵌入式文本层的 PDF 文件。

测试结果

OCR识别后,验证准确性:

  • 选择页面上的文本——文本应能精确地覆盖在印刷字符上。
  • 使用 Ctrl+F / Cmd+F 搜索常用词——应该能找到。 复制一段文字并粘贴到文本编辑器中——输出结果应该可以正常阅读。

如果准确率较差,请先检查输入扫描件的质量,然后再尝试其他工具。

何时在其他操作之前运行 OCR

OCR 功能解锁了 LuraPDF 的一些额外操作,这些操作在纯图像 PDF 上无法实现:

  • OCR 后压缩 PDF:提取文本后,有时可以对图像区域进行更彻底的压缩。
  • **OCR识别后的PDF转Word:将经过OCR识别的PDF文件转换为Word文档,可得到可编辑的文本;转换原始扫描件,可得到包含嵌入图像的Word文件。
  • OCR 后 编辑 PDF:基于文本的编辑功能在 OCR 文档上运行正常。
  • 搜索和提取:查找并复制特定信息,无需重新输入

隐私:OCR 在您的浏览器中运行

Tesseract.js 使用 WebAssembly 在本地运行整个 OCR 流程。您扫描的文档(通常包含医疗记录、财务报表、法律文件或个人身份信息)绝不会离开您的设备。没有任何远程服务器处理您的文件。

与云端 OCR 服务相比,这是一个显著的优势,因为云端 OCR 服务必然会收到您处理的所有文件的副本。

基于浏览器的OCR的局限性

处理时间

Tesseract.js 的速度比原生桌面版 Tesseract 或云端 OCR API 慢。根据您的硬件配置,每页大约需要 3-8 秒。一份 50 页的文档可能需要几分钟才能处理完毕。

表格

Tesseract 可以识别表格内容,但不会重建 PDF 文本层中的表格结构——文本顺序会保持不变,但单元格结构会被破坏。要提取结构化的表格,请将 OCR 识别后的 PDF 转换为 Word 文档,然后手动重新格式化表格。

数学符号

LaTeX 风格的公式和数学符号准确率较低。Tesseract 模型针对自然语言文本进行了优化。

手写

如前所述,草书的准确性有限,印刷体书写则更为准确。对于重要的手写文件,务必逐页手动核对。

常见问题解答

OCR识别出的文本与实际字符不匹配——这是个bug吗? 严重倾斜的扫描件可能会出现这种情况。文本位置是根据检测到的字符位置计算的,但如果页面几何形状不标准,对齐方式可能会发生偏移。尝试在运行 OCR 之前旋转 PDF 文件以校正倾斜。

我可以只对特定页面进行OCR识别吗? LuraPDF 会处理所有页面。如果您只需要对特定页面进行 OCR 识别,请先使用 提取 PDF 页面 提取这些页面,运行 OCR,然后您可以选择合并结果。

OCR技术会改变扫描文档的视觉外观吗? 不,原始扫描图像完全保留,仅添加了一层不可见的文字层。

我可以对一个已经包含一些文本页和一些扫描页的PDF文件进行OCR识别吗? 是的——Tesseract 会处理基于图像的页面并添加文本层。已经包含文本层的页面不受影响。

我的文档是阿拉伯语/中文/日语的——OCR技术能识别吗? 是的,但运行工具前请务必选择正确的语言。Tesseract 对中日韩语言和从右至左书写语言的识别准确率较高,但相比拉丁字母书写文档,其准确率受扫描质量的影响更大。

OCR技术可以将加密的扫描文档档案转换为可访问、可搜索、可处理的信息。一柜子的扫描合同可以变成可搜索的数据库。一叠医疗记录可以变成您可以实际浏览的文档。整个过程只需几秒到几分钟,并且完全在您的设备上完成。

About the author

LuraPDF Team
LuraPDF Team

Editorial & Technical Team · May 4, 2026 · 11 min read

The LuraPDF team consists of document processing experts, software engineers, and technical writers dedicated to making professional PDF editing free, private, and accessible.