在 Debian、Ubuntu 和 Fedora 上用包管理器安装 OCRmyPDF 并验证 ocrmypdf 版本
【免费下载链接】OCRmyPDFOCRmyPDF adds an OCR text layer to scanned PDF files, allowing them to be searched项目地址: https://gitcode.com/GitHub_Trending/oc/OCRmyPDF
如果你需要给扫描版 PDF 添加可搜索、可复制的 OCR 文本层,OCRmyPDF 是最直接的命令行工具。在 Debian、Ubuntu 22.04 及更新版本、Fedora 这类发行版上,不需要手动处理 Python 依赖,直接用发行版包管理器就能装好,再用ocrmypdf --version确认装上的版本。本文只覆盖这三条包管理路径和版本验证,以及包版本落后时的一个可选升级分支,依据是仓库中的 安装文档。
Debian / Ubuntu 上的安装
适用条件:Debian 和 Ubuntu 22.04 或更新版本。执行:
apt install ocrmypdf这条命令会同时装上 OCRmyPDF 依赖的系统组件。装完不代表一定是最新版——文档明确说明 Debian 与 Ubuntu 仓库里的版本可能落后于 PyPI 上的最新发布版,是否落后要自己核对(文档给出的途径是发行版官方的包追踪页)。
两个与这两个发行版直接相关的限制:
- Debian 和 Ubuntu 的 OCRmyPDF 包目前不包含 JBIG2 编码器。没有它 OCRmyPDF 能正常工作,但黑白图像会退回压缩率更低的编码,输出文件会更大。
- 文档建议 64 位系统,不支持任何 32 位系统(含 32 位 Python)。
Fedora 上的安装
Fedora 的包名组合多一个 tesseract OSD 组件,执行:
dnf install ocrmypdf tesseract-osdFedora 包同样不带 JBIG2 编码器,影响和上面 Debian/Ubuntu 一致:能用,但单色图像压缩更弱、文件更大。
验证安装版本
安装完成后运行:
ocrmypdf --version这个参数会在打印版本号后退出,文档原文的建议就是「Useocrmypdf --versionto confirm what version was installed」。把打印出的号与发行版仓库提供的版本对照:如果落后于你需要的新版本,而你的发行版是 Ubuntu 22.04/24.04 LTS,可以走下面的可选分支。
可选分支:Ubuntu 22.04/24.04 LTS 上用 uv 装最新版
文档明确说 Ubuntu 仓库自带较旧的 OCRmyPDF,并在 LTS 上推荐用 uv 升级。先确认系统依赖已满足(即上面apt install ocrmypdf已经执行过),然后:
# Install uv and upgrade to the latest OCRmyPDF pip install uv uv pip install --user --upgrade ocrmypdf--user表示装到当前用户目录,不动系统 Python 环境。装完同样用ocrmypdf --version确认版本是否已变成 PyPI 最新版。
可选补强:JBIG2 编码器与字体
这两项都不是安装ocrmypdf命令本身的前提,按需求选做:
- JBIG2:Debian/Ubuntu/Fedora 的包都不带。文档给出的补法是从源码构建 jbig2enc(依赖
autotools、automake、libtool、pkg-config、leptonica等),构建完成后 OCRmyPDF 会自动在PATH上发现它,无需改任何配置。具体步骤见 JBIG2 编码器安装。注意 v17.0.0 起只支持无损 JBIG2 压缩,--jbig2-lossy已被移除。 - 字体:OCRmyPDF 只内置一种拉丁字体,其余靠系统字体发现。文档建议 Debian/Ubuntu 上执行
apt install fonts-noto,Fedora 上执行dnf install google-noto-fonts-all。缺少对应字体的字不会导致失败:文本层依旧可搜索可复制,只是高亮时的显示受影响,且 OCRmyPDF 会在警告里点名缺字形的字符。
验证清单与已知限制
ocrmypdf --version能打印出版本号,说明命令行可用;打印的号就是发行版包提供的版本,是否最新由你对照包追踪信息判断。- 三个发行版的包均省略 JBIG2 编码器,输出文件偏大是预期内的现象,不是安装失败。
- 32 位系统不受支持,安装前提之一。
- 若某个版本的功能(如新的光栅化后端)在你的发行版包中缺失,文档给出的兜底路径是 从源码安装 HEAD 版本,那需要 Python 3.11+(推荐 3.12+)和 git,属于超出本文范围的进阶操作。
【免费下载链接】OCRmyPDFOCRmyPDF adds an OCR text layer to scanned PDF files, allowing them to be searched项目地址: https://gitcode.com/GitHub_Trending/oc/OCRmyPDF
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考