无需上传, 100% 本地处理, 无需账户

让扫描版 PDF 变得可搜索

拖入扫描版 PDF,得到叠加了不可见可搜索文本层的相同页面。识别完全在浏览器中运行(设备端,首次加载后可离线),不上传任何内容。

PDF OCR · 让扫描件可搜索 的工作原理

PDF OCR 可以把由纯图像页面组成、没有真实文字的扫描版 PDF 转换成可搜索的 PDF:保留相同的页面图像,并在每个识别出的单词上方叠加一层不可见的文字层。在任何 PDF 阅读器中打开结果,您现在就可以用 Ctrl+F 查找单词、选中并复制一段文字,或者让搜索引擎为该文档建立索引,这些都是普通扫描件做不到的事。识别本身由 tesseract.js 完成(与本站 OCR 工具使用的自托管 OCR 引擎相同),页面渲染由 pdf.js 完成,两者都完全在您的浏览器标签内运行,您的文件从不会被上传。

这个工具对自己能做什么、不能做什么很坦诚。它不会重建版式、表格或字体,也不是一个可编辑文档转换器:可见的页面保持原样,与源扫描件一致,只是在外观下方添加了一层隐藏文字。识别准确率取决于扫描质量,与其他任何 OCR 引擎一样,建议使用 200 DPI 以上、对比清晰、页面端正的扫描件。如果您只需要提取出来的纯文本,而不是一份可以在里面搜索的 PDF,OCR 工具会直接生成 .txt 文件,处理这项具体任务时速度更快。

PDF OCR · 让扫描件可搜索 的分步使用说明

  1. 将扫描版 PDF(每页一张图像,且没有现有文字层)拖到上传区域。
  2. 从语言下拉菜单中选择文档的主要语言。
  3. 如果是第一次使用该工具,请等待 tesseract.js 引擎下载完成(只需一次)。
  4. 点击运行,依次等待每一页被渲染和识别。
  5. 下载可搜索的 PDF:外观不变,但下方多了一层文字。

常见使用场景

  • 扫描合同需要变得可搜索,以便用 Ctrl+F 直接定位某一条款,而不用逐页阅读。
  • 一批扫描发票需要进入文档归档系统,而该系统的搜索索引只能读取真实的 PDF 文字。
  • 拍摄或扫描的表单需要让打印文字变得可选中,以便把一段内容复制到邮件里。
  • 一批德语扫描报告需要支持全文搜索;运行工具前先选择德语。

常见问题

这和普通的 OCR 工具有什么区别?

OCR 工具会把纯文本提取到一个 .txt 文件中,完全舍弃原始版式和图像。PDF OCR 则会保留原始 PDF 的页面图像,外观完全不变,并在下方添加一层不可见的、可搜索的文字层。只想要文字内容时用 OCR;想让文档仍然是 PDF,同时变得可搜索和可选中时用 PDF OCR。

输出的 PDF 看起来会和我的扫描件不一样吗?

不会。每一页都从您的源 PDF 渲染并重新嵌入为图像,与原始扫描件像素级一致(JPEG 重新编码带来的细微差异除外)。识别出的文字以完全透明的方式绘制在上方,因此不会有任何新内容可见;只有搜索文字或选中文字时,才能察觉到这层附加内容。

工具会重建表格、分栏或字体吗?

不会。输出把页面保留为单张平面图像;隐藏文字层跟随识别出的单词位置排布,但不会保留表格结构,也不会超出 tesseract.js 推断范围地还原多栏阅读顺序或原始字体。这是一层可搜索性,而不是转换为可编辑文档。

处理过程中我的扫描文件会被发送到任何地方吗?

不会。从本站下载 tesseract.js 引擎和语言包之后(首次使用时只需一次、几兆字节的下载),之后每一页的渲染和每一次识别都完全在您的浏览器标签内进行。扫描合同、病历或其他敏感文档从不会到达服务器。

为什么一份很长的 PDF 处理起来要花些时间?

每一页都会被渲染成图像,并单独在该图像上运行 OCR,全部在您的浏览器标签内完成,所以处理时间会随页数增加而变长。进度条反映的是真实的逐页进度,文件大小上限为 80 MB,以确保整个流程不超出浏览器标签的内存预算。

如果我的 PDF 已经带有可选中的文字怎么办?

对已经带有真实文字层的 PDF 运行 OCR 没有必要,在阅读器中打开并按 Ctrl+F 就已经可以直接使用。这个工具是为由页面图像组成、没有底层文字的 PDF 设计的,也就是平板扫描仪或对拍摄文档执行“打印为 PDF”后常见的输出形式。