
3 分钟给扫描 PDF 加上 OCR 文本层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 一次处理就能全解决。它给扫描 PDF 加上 OCR 文本层、把歪斜页面摆正最后产出一份可搜索 PDF。3 分钟跑通第一次安装并执行首个 OCR先装好工具再跑第一条命令五分钟内就能看到效果。macOS / Linux / Windows 安装macOS用 Homebrew 一条命令装齐所有依赖最省心brew install ocrmypdfLinuxDebian、Ubuntu 这类发行版直接用系统包管理器apt install ocrmypdfWindows先装 Python 和 Tesseract再用 pip 装程序本体winget install Python.Python.3.12 winget install UB-Mannheim.TesseractOCR pip install ocrmypdf三条命令跑完ocrmypdf --version能打印版本号就算装好了。各发行版、WSL 等更细的步骤见官方安装文档。第一条命令把一份扫描件变成可搜索 PDF一份没有文本层的扫描稿整页都是图像什么都搜不到ocrmypdf input.pdf output.pdf中间这步做的事把每页扫成图像交给 Tesseract 识别文字再把文字按原位置嵌回 PDF。打开 output.pdf在搜索框里敲任意单词都能命中而页面外观和扫描件一模一样——这层看不见的文字就叫文本层。 四类常见问题与 OCRmyPDF 的解法OCRmyPDF 处理过程一览各阶段进度、压缩节省比例最后校验输出符合 PDF/A-2B页面歪斜或方向颠倒自动校正与旋转手机拍文档十有八九是斜的。加两个参数就能自动摆正ocrmypdf --deskew --rotate-pages input.pdf output.pdf--deskew让程序算出每页倾斜了多少钱并转回来--rotate-pages识别页面朝向把横着或倒着的页转正。两个一起加拍得再随意也能出水平文本。噪点、泛黄、背景杂乱图像清洁脏背景会直接拉低识别率。清洁参数如下ocrmypdf --clean --remove-background input.pdf output.pdf--clean在识别前去掉斑点和杂色--remove-background把泛黄、灰底这类浅色背景压成纯白。老报纸、旧档案这种背景不均匀的扫描件用这对参数效果最好图干净了识别自然准。多语言混排指定语言包正文中文、附录英文默认只认英文的话其他语言就全错了。用-l指定语言代码多个用连起来ocrmypdf -l chi_simeng input.pdf output.pdf表示中英文混排两种都识别。支持的语言和语言包安装方法见语言支持文档。要保存数十年PDF/A 归档与压缩OCRmyPDF 默认输出PDF/A——国际标准化组织定义的长期存档格式会把字体、色彩信息完整嵌进文件保证多年后打开看到的还和现在一样。体积想再小一点加--optimize取值 1–3数字越大压得越狠默认是 1。归档级 PDF 加上图片压缩老文档体积能省一半以上细节见高级功能文档。它是怎么校正的歪斜校正靠的是 Tesseract 的方向检测OSD能力它扫一遍页面统计所有文字行的走向算出整页歪了多少度、朝向是正的还是倒的。OCRmyPDF 拿到这个角度把页面转回去方向颠倒的页也会一并纠正。一份带倾斜的扫描稿校正前的典型输入--clean和--remove-background背后是 unpaper 这个图像预处理程序。它先分析页面结构——文字块在哪、页边在哪——再做去噪、去斑、背景压平。识别之前把图洗干净比识别完再修省事得多。常见坑与进阶用法--sidecar加一个输出路径PDF 旁边多产出一份纯文本ocrmypdf --sidecar out.txt input.pdf output.pdf。适合做全文检索、归档索引。--optimize三档压缩级别1保守、3最狠。归档旧照片多的文档时用 2 或 3体积差距明显。批处理一个文件夹的扫描件写个循环就行for f in *.pdf; do ocrmypdf --deskew $f ocr_$f; done把当前目录所有 PDF 逐个加文本层并摆正晚上跑早上收。OCRmyPDF 把扫描件不能搜、歪着没法看、太大不好存这三件事收进了一条命令。挑一份手头的扫描件按上面的步骤跑一遍——加--deskew摆正、用--optimize 2控体积然后打开输出文件搜一个词。能搜到就说明文本层已经就位。【免费下载链接】OCRmyPDFOCRmyPDF adds an OCR text layer to scanned PDF files, allowing them to be searched项目地址: https://gitcode.com/GitHub_Trending/oc/OCRmyPDF创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考