十年匠心定制 · 商业建站与技术教学双线并行 咨询热线:400-886-1026 service@lmnt.cn
ARTICLE DETAIL

资讯详情

深耕网站建设与运营推广的一线实战洞察。

如何用 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/OCRmyPDFOCRmyPDF 在本地对扫描 PDF 做 OCR原图一字不动只在下面垫一层隐藏文字文件从此能搜索、能复制。免费开源文件不用上传到任何服务器几十份扫描件一次跑完。这篇带你从装好、跑通第一条命令讲到最常用的参数和常见报错。什么情况下用它文件夹里一堆扫描件合同、发票只能看不能搜。过一遍 OCRmyPDF 后每页多出一层文字PDF 阅读器里CtrlF能直接命中关键词。扫描的论文或旧书动辄两三百页。它默认把全部 CPU 核心拿去并行厚书一次跑完不用一页页手动处理。文件里图片页和文字页混排。加--skip-text已有文字层的页原样保留只对纯图像页做识别。安装并跑通第一条命令pip install ocrmypdf # Windows需先装 Tesseract 和 Ghostscript brew install ocrmypdf # macOS apt install ocrmypdf # Debian / Ubuntu装完直接跑最短的一条ocrmypdf 扫描件.pdf 可搜索.pdf验证方法用 PDF 阅读器打开可搜索.pdf按CtrlF输入一个页面里确定有的词能命中、选中能复制说明文字层加上了。输出默认是 PDF/A 归档格式适合长期保存。高频参数告诉它识别语言。默认按英文识别文档不是英文就该换否则准确率掉得很快。ocrmypdf -l engdeu 德文笔记.pdf 德文笔记_可搜索.pdf识别出的文字改用对应语言模型德文的 ü、ß 不再变成乱码。只处理部分页面。几百页的文件只需要其中几节用页码范围限定。ocrmypdf --pages 4-25 大文档.pdf 大文档_部分.pdf输出里只剩第 4 到 25 页识别耗时和内存占用同步降下来。重做已有文字的页面。页面本来带文字层但识别不准时强制重新识别。ocrmypdf --force-ocr 重扫.pdf 重扫_可搜索.pdf旧的隐藏文字被抹掉整页重绘成图像再识别一遍得到全新的文字层。压缩输出。发现输出比输入还大时打开图像压缩。ocrmypdf --optimize 2 扫描件.pdf 扫描件_更小.pdf图像被重新编码文件体积变小高分辨率扫描件差几倍都正常。组合实战 一本旧书扫描件有的页转了方向多数页轻微歪斜还有阴影繁体中文里混着英文。一条命令全处理掉ocrmypdf -l chi_traeng --rotate-pages --deskew --clean-final -j 8 --optimize 2 旧书.pdf 旧书_可搜索.pdf每个参数的分工-l chi_traeng语言包告诉引擎书里两种语言并存--rotate-pages把转了 90° 或 180° 的页自动摆正--deskew修正小幅歪斜--clean-final去噪去阴影清洁后的图像替换原页-j 88 个核心并行300 页的厚书省一半以上时间--optimize 2压缩图像输出不至于膨胀注意--deskew和--clean-final依赖 unpaper 程序没装会报错见下一节。遇到问题先查这里 问报错提示找不到chi_tra语言包。答对应的 Tesseract 语言包没装。Debian/Ubuntu 执行apt-get install tesseract-ocr-chi-tramacOS 执行brew install tesseract-lang。问出现 PDF contains text拒绝处理。答默认行为是不碰已有文字层的页面。加--skip-text跳过这类页继续或者用--force-ocr全部重新识别。问--clean-final报错说缺少 unpaper。答去噪环节依赖 unpaper 这个外部程序先执行apt install unpaper装好再重跑。问输出文件比输入大。答文字层是额外加上的内容图像默认无损编码。加--optimize 3压缩更狠系统里装了 pngquant、jbig2enc 还会更小。第一条命令跑通之后剩下的活就是按文档情况往后面加参数。完整参数清单在 docs/advanced.md上面几种报错的来龙去脉可以在 docs/errors.md 里逐条对照。【免费下载链接】OCRmyPDFOCRmyPDF adds an OCR text layer to scanned PDF files, allowing them to be searched项目地址: https://gitcode.com/GitHub_Trending/oc/OCRmyPDF创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
返回列表