YAOTU INSIGHTS

OCRmyPDF 完整指南:一步给扫描 PDF 加上可搜索的文本层

OCRmyPDF 完整指南:一步给扫描 PDF 加上可搜索的文本层
OCRmyPDF 完整指南一步给扫描 PDF 加上可搜索的文本层【免费下载链接】OCRmyPDFOCRmyPDF adds an OCR text layer to scanned PDF files, allowing them to be searched项目地址: https://gitcode.com/GitHub_Trending/oc/OCRmyPDF你硬盘里大概存着不少扫描版 PDF合同、发票、老论文、古籍影印件。它们只能看搜不了关键词复制不出一个字。OCRmyPDF 就是一个免费的命令行工具给这类扫描件加一层 OCR 文本——处理完页面外观不变但你已经可以在阅读器里直接搜索和复制文字了。它的工作方式很直接把每一页当图片送进 Tesseract 引擎识别再把识别出的文字按原位置贴回页面下方形成一层不可见的文本。默认输出是经过校验的 PDF/A 格式适合长期存档它还会顺手压缩页面里的图片输出文件常常比输入更小。引擎支持 Tesseract 提供的 100 多种语言默认自动用满你机器的所有 CPU 核心。下面这张图就是一份典型的扫描件素材——OCRmyPDF 的测试库里就靠这种打字机手稿来验证识别效果要记的安装命令按系统挑一条执行就行官方在 docs/installation.md 里对每个发行版都写得更细# Debian / Ubuntu / WSL sudo apt install ocrmypdf # macOS brew install ocrmypdf # 其他情况或想要最新版 pip install ocrmypdf装完跑一下ocrmypdf --version确认。两个依赖要留意Tesseract 引擎和 Ghostscript 必须随包装好系统包管理器装的版本已包含而语言包是单独装的英文默认就有识别中文要先装对应的tesseract-ocr-chi-sim。30 秒做出第一份可搜索 PDF第一条命令只需要两个参数——输入和输出ocrmypdf --deskew --rotate-pages input_scan.pdf output_searchable.pdf--deskew把歪掉的页面摆正--rotate-pages自动纠正 90 度错向的页面这两个参数对扫描件基本是白捡的改进建议以后都带着。命令跑完后用任意 PDF 阅读器打开输出文件按关键词搜索试试——这就是那层隐形文本在工作。 默认情况下如果某页已经有文本比如数字原生 PDF 或处理过一次的扫描件OCRmyPDF 会直接报错退出避免重复处理。这是保护机制不是故障。调出效果的 3 个参数多语言混排用-l多个语言用加号连接ocrmypdf -l engchi_sim 双语文档.pdf 输出.pdf已有文本的页面怎么处理用--mode一个参数说清这是官方文档 docs/advanced.md 里推荐的方式模式行为default页面已有文本就报错退出防止重复处理skip已有文本的页原样保留只处理纯扫描页force所有页重新栅格化并 OCR等于推倒重来redo剥掉旧的隐形文本层再重新识别批量处理不需要写脚本一行 find 搞定整个文件夹find ./scanned -name *.pdf -exec ocrmypdf {} {}.ocr.pdf \;几百页的大文件不用担心它默认多线程跑几千页的文档也能正常处理。出问题先查这 3 处识别不准、字太小用--oversample 600强制把页面按 600dpi 送进识别引擎低分辨率扫描件的提升会很明显ocrmypdf --oversample 600 低清扫描.pdf 修复后.pdf页面脏、有噪点加上--clean它背后是 unpaper 在帮你去噪、修边。如果扫描歪得很厉害先--deskew再识别的顺序不用你管命令里两个参数同时给即可。输出文件偏大加上--optimize 21 到 3 是力度档位它会压缩页面图像很多场景下输出反而比输入小。 报错里出现语言相关提示时九成是语言包没装齐先apt-cache search tesseract-ocr找到对应语言的包装上再重跑。从最简单的两步开始装好工具对你手头任意一份扫描件跑一次ocrmypdf 输入.pdf 输出.pdf然后立刻在阅读器里搜一个词验证效果。剩下的参数等你的扫描件暴露出什么问题再按上面的对照表挑着用。一份以前只能翻页看的文档从此变成可以搜索、可以复制、还能长期归档的资产——这就是这一条命令换来的东西。【免费下载链接】OCRmyPDFOCRmyPDF adds an OCR text layer to scanned PDF files, allowing them to be searched项目地址: https://gitcode.com/GitHub_Trending/oc/OCRmyPDF创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考