OCRmyPDF: 为PDF添加可搜索文本层的开源工具

ocrmypdf/OCRmyPDF 是 GitHub 上的开源项目,目前…

OCRmyPDF: 为PDF添加可搜索文本层的开源工具

ocrmypdf/OCRmyPDF 是 GitHub 上的开源项目,目前获得 33,622 个 Star。

正文顶部截图

README区域截图

OCRmyPDF 可以为扫描版 PDF 文件添加 OCR 文本层,使文件支持搜索和内容复制粘贴。

工具默认输出 PDF/A 格式,适合长期存储。处理过程中会保留原始嵌入图像的分辨率,插入 OCR 信息时不会破坏原有内容。部分场景下,优化后的输出文件体积小于输入文件。

OCRmyPDF 支持自动校正页面旋转角度,也可以根据需求对倾斜的页面进行纠偏。工具使用 Tesseract OCR 引擎,支持超过 100 种语言识别。任务会分发到所有可用 CPU 核心运行,处理速度随核心数提升。

工具支持 Linux、Windows、macOS 和 FreeBSD 系统,也提供 Docker 镜像,适配 x64 和 ARM 架构。

不同系统的安装命令如下:

Debian、Ubuntu 系统使用 apt install ocrmypdf

Fedora 系统使用 dnf install ocrmypdf

macOS Homebrew 用户使用 brew install ocrmypdf

FreeBSD 系统使用 pkg install py-ocrmypdf

Ubuntu Snap 用户使用 snap install ocrmypdf

安装完成后,可以通过 ocrmypdf –help 查看完整命令参数说明。

常用使用示例:

为扫描版 PDF 添加 OCR 层并输出 PDF/A 格式:

ocrmypdf –output-type pdfa input.pdf output.pdf

将图片转换为单页可搜索 PDF:

ocrmypdf input.jpg output.pdf

直接修改原文件添加 OCR 层,仅在处理成功时覆盖原文件:

ocrmypdf myfile.pdf myfile.pdf

识别非英语语言内容,例如法语:

ocrmypdf -l fra LeParisien.pdf LeParisien.pdf

处理多语言文档,例如同时包含英语和法语的文件:

ocrmypdf -l eng+fra Bilingual-English-French.pdf Bilingual-English-French.pdf

对倾斜的页面进行自动纠偏:

ocrmypdf –deskew input.pdf output.pdf

OCRmyPDF 提供插件接口,可以扩展或替换核心功能。现有插件支持替换 Tesseract 引擎为 AppleOCR、EasyOCR、PaddleOCR 等不同 OCR 方案,适配不同使用场景。

工具代码托管在 GitHub,地址为 https://github.com/ocrmypdf/OCRmyPDF。