OCRmyPDF 快速上手:给扫描 PDF 加上可搜索的文本层
【免费下载链接】OCRmyPDFOCRmyPDF adds an OCR text layer to scanned PDF files, allowing them to be searched项目地址: https://gitcode.com/GitHub_Trending/oc/OCRmyPDF
OCRmyPDF 是一个命令行工具,给扫描版 PDF 添加 OCR 文本层,让原本只能"看图"的文件变得可搜索、可复制、可归档。适合经常处理扫描件、旧报纸影印件、手机拍文档的办公和归档用户。
什么时候用得上
- 老扫描件无法复制文字:扫描出来的 PDF 只有一张图,选中文字会失败,你只能手动重打一遍。
- 混合文档里有图有文:PDF 里既有可复制的页、也有纯扫描页,需要给缺文本的页单独补一层。
- 批量归档历史文件:几百页的影印件要长期保存,还希望搜索关键词能直接定位到页。
安装
按你的系统选一条命令:
apt install ocrmypdf # Debian / Ubuntu / WSL dnf install ocrmypdf tesseract-osd # Fedora brew install ocrmypdf # macOS 及 Linux (Homebrew)包管理器会自动装好 Tesseract 等依赖;Windows 没有单行命令,可走 WSL,或参考 docs/installation.md 的 pip 方式。
第一条能跑通的命令
ocrmypdf --deskew input.pdf output.pdf # 校正倾斜并加文本层运行完打开 output.pdf:图片还在原位,按住 Ctrl 就能选中、搜索、复制文字了。输入和输出可以是同一个文件名,处理成功才会覆盖,详见 docs/advanced.md。
常用选项速查
| 选项 | 作用 | 什么时候用 |
|---|---|---|
-l eng | 指定识别语言,支持多语言组合如eng+fra | 文档不是英文时 |
--rotate-pages | 自动判断页面方向并转正 | 横竖页混排、方向拍错的扫描件 |
--deskew | 校正页面倾斜 | 扫描或拍照歪斜时 |
--sidecar out.txt | 同时导出一份纯文本 | 要做全文检索或数据分析时 |
-O 0~-O 3 | 压缩强度,数字越大文件越小 | 归档想省空间时用-O 3,默认 1 即可 |
组合用法
手机拍的文档常见方向错加倾斜,一次处理两件事:
ocrmypdf --deskew --rotate-pages scan.pdf out.pdf扫描旧文档时先去除背景杂色,再连同纯文本一起输出:
ocrmypdf --remove-background --sidecar out.txt old.pdf out.pdf🔍 容易踩的坑
Q:识别出来的字不对或是一堆乱码?A:多半是语言包没装对,或-l没指定,见 docs/languages.md。另外 Tesseract 不认识手写体,扫描质量差结果也会差。
Q:输出文件为什么比原文件大?A:默认输出 PDF/A 归档格式,会把字体等资源全部嵌入。只要普通 PDF 就加--output-type pdf。
Q:--clean和--clean-final有什么区别?A:--clean只影响 OCR 过程,不改输出图像;--clean-final会把清理后的图写进结果,使用前要逐页确认没误删内容。
深入资源
- docs/cookbook.md:图片转 PDF、多语言等更多用法
- docs/optimizer.md:
--optimize各等级的说明 - docs/errors.md:报错信息对照与处理办法
- misc/watcher.py:文件监听批处理的示例脚本
装好以后,拿第 4 节那条命令跑一个你自己的扫描件,看看文本层是不是真的能选中。
【免费下载链接】OCRmyPDFOCRmyPDF adds an OCR text layer to scanned PDF files, allowing them to be searched项目地址: https://gitcode.com/GitHub_Trending/oc/OCRmyPDF
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考