PDF 与图片 OCR

pdf → txt

用在您浏览器中运行的 OCR 从扫描版 PDF 或照片中读取文字,然后复制或以纯文本下载。

设置
队列不会上传任何文件
将扫描版 PDF 或照片拖放到此处
正在识别文字…

关于这款 OCR 工具

工具在一个 Web Worker 中运行 Tesseract.js,这是一款编译为 WebAssembly 的 OCR 引擎。对于英文 PDF,它会先检查文件中是否已经带有文字层,例如 Word 导出的文件,或者已经做过 OCR 的 PDF 就带有这种文字层,如果文字足够多,就直接返回,不再运行 OCR。否则,它会把每一页转成图片,再识别图片上的文字。

识别最多会按不同的图像处理方式对同一页尝试三次:先做对比度增强,适合浅淡的文字;再做反色处理,适合深色背景上的浅色文字;最后使用未经处理的原图。哪一次识别出的文字最多,就采用哪一次的结果。

使用方法

01

添加文件

拖放一份扫描版 PDF 或一页照片,或点击“选择文件”进行选择。

02

选择语言

在 OCR 语言列表中选择文字所使用的语言,默认是英语。

03

提取文字

点击“提取文字”。单页通常几秒内完成,多页扫描件需要更长时间,逐页处理。

04

复制或下载

在文本框中查看结果,然后使用“复制文字”或“下载 .txt”。“翻译文字”会把文字发送到您设备之外,涉及隐私内容时请不要点击。

这款工具能做什么

  • 从扫描版 PDF、拍摄的页面照片或图片文件中读取文字,一次处理一个文件。
  • 对英文 PDF,会先检查是否已有文字层,文字足够多时无需运行 OCR,直接返回结果。
  • 如果第一次尝试几乎识别不到文字,会用反色或未处理的图片重新识别该页,这对深色背景和浅淡的扫描件有帮助。
  • 支持十一种语言以及三种与英语搭配的组合,从阿拉伯语到中文,可在转换前从列表中选择。
  • 文件超过一页时,会用“--- Page N ---”标出每一页。
  • 可以复制识别结果,或将其下载为 .txt 文件。“翻译文字”是这个页面上唯一会把内容发送到您设备之外的功能。

技术规格

规格 说明
支持格式 一次一份扫描版 PDF 或一张图片(JPG、PNG 及浏览器能显示的其他格式),最大 100 MB
输出 文本框中的纯文本;点击“下载 .txt”会保存为 ocr_extracted_text.txt
OCR 语言 英语、西班牙语、法语、德语、印地语、中文、日语、葡萄牙语、意大利语、阿拉伯语、俄语,以及三种与英语搭配的组合
识别引擎 Tesseract.js 5.0.4,以 WebAssembly 形式在 Web Worker 中运行,从 cdnjs CDN 加载
PDF 处理 PDF.js 3.11 用于读取已有的文字层,或以约 144 DPI 将每一页绘制成图片供 OCR 使用
“翻译文字”按钮 在您确认后,将识别出的文字(而非文件本身)通过网络发送给 MyMemory 翻译 API
文件去向 哪儿也不去,始终在当前标签页中被读取和识别
使用须知

这款工具做不到的事

它只把图片变成文字,不会保留原始版式,其中一项功能还会与外部服务通信。

只能得到纯文本

得到的是一份纯文本文件,不是底层带扫描图的可搜索 PDF,也不是 Word 文档。像 OCRmyPDF 这样的桌面工具,才会把识别出的文字重新写回原始文件。

版式不会保留

多栏内容常常会混在一起,表格会丢失单元格结构,变成一串数字。版式复杂的页面事后通常需要手动整理。

翻译会把内容发到设备之外

打开文件、绘制页面和运行 OCR 都在本机完成。点击“翻译文字”会在弹出确认提示后,把识别出的文字发送给 MyMemory 的 API 进行翻译。涉及保密内容时请避免点击此按钮。

不支持手写体

Tesseract 是用印刷体文字训练的,识别手写体潦草字迹时会给出看似可信、实则错误的文字。

识别准确度取决于扫描质量

分辨率低、光线不均、照片倾斜或歪斜,都会降低准确度。平整、方正、光线均匀的扫描件识别效果最好。

英语有捷径,其他语言没有

文字层检查只在语言选择英语时才会进行。选择其他 OCR 语言时,工具总会先把页面绘制成图片再运行识别,即使这份 PDF 本来就有可选中的文字。

相关 PDF 工具

常见问题

文件本身不会被上传。读取文件、绘制页面和运行 OCR,都在这个标签页中通过 Tesseract.js 和 PDF.js 完成。唯一的例外是“翻译文字”按钮,使用它时会把识别出的文字(而不是文件)发送给一个外部翻译服务。

只会发送结果框中当前的文字,并按不到 500 个字符一段拆分,通过网络发送给 MyMemory 的公共翻译 API。每个页面首次使用时都会先请您确认。您的 PDF 或图片本身,从来不会包含在这个请求中。

如果您把语言保留为英语,且文件是 PDF,工具会先检查文件中是否已带有文字层,例如 Word 导出的文件,或者已经做过 OCR 的 PDF 就带有这种文字层。文字足够多时,会直接返回结果,完全跳过 OCR。选择其他语言时,则总会运行完整的识别流程。

不能。结果只是纯文本,显示在文本框中,也可以下载为 .txt 文件。想把文字重新做成 PDF,可以使用文本转 PDF;如果想保留原始扫描件并额外加上一层隐藏文字,桌面工具会更合适。

识别是按块从左到右读取的,所以多栏页面和表格常常会被重新排序,或者变成一串数字。分辨率低、光线不均、照片倾斜、字号过小或手写体,也都会降低准确度。

您的文件基本上留在您的设备上

Tesseract.js 和 PDF.js 在这个标签页中运行,用来读取文件并识别其中的文字,文件本身不会被上传。如果您点击“翻译文字”,在您确认后,识别出的文字(而不是文件)会被发送给 MyMemory 的翻译 API。