安装附加语言包

OCRmyPDF 使用 Tesseract 进行 OCR,并依赖其语言包支持所有语言。在大多数平台上,Tesseract 默认安装了英语,但并非总是如此。

Tesseract 支持 大多数语言。语言通过标准化的三字母代码标识(称为 ISO 639-2 Alpha-3)。Tesseract 的文档也列出了您所需语言的三字母代码。有些被英语化了,例如西班牙语是 spa 而不是 esp,而其他则不是,例如德语是 deu,法语是 fra

语言包(严格来说,是 Tesseract 的“traineddata”文件)通常对应于相关语言,但在某些情况下会使用不同的语言包。对于德语,“Fraktur”语言包可以帮助读取使用 Fraktur 字体家族的旧材料 (deu_frak)。一些社区已将其文字从西里尔文改为拉丁文;乌兹别克语的西里尔文版本可用 uzb_cyrl 表示,拉丁文版本可用 uzb 表示。

安装语言包后,您可以将其与 ocrmypdf -l <language> 一起使用,例如 ocrmypdf -l spa。对于多语言文档,您可以指定所有预期语言,例如英语和法语使用 ocrmypdf -l eng+fra。除非指定了其他语言,否则默认假定为英语。

对于 Linux 用户,通常可以找到提供语言包的软件包。

平台安装步骤

Debian 和 Ubuntu (apt)

# Display a list of all Tesseract language packs
apt-cache search tesseract-ocr

# Install Chinese Simplified language pack
apt-get install tesseract-ocr-chi-sim

然后,您可以将 -l LANG 参数传递给 OCRmyPDF,以提示它应该搜索哪些语言。可以使用 -l eng+fra(英语和法语)或 -l eng -l fra 请求多种语言。

Fedora

# Display a list of all Tesseract language packs
dnf search tesseract

# Install Chinese Simplified language pack
dnf install tesseract-langpack-chi_sim

然后,您可以将 -l LANG 参数传递给 OCRmyPDF,以提示它应该搜索哪些语言。可以使用 -l eng+fra(英语和法语)或 -l eng -l fra 请求多种语言。

Arch Linux

# Display a list of all Tesseract language packs
pacman -Ss tesseract-data

# Install German language pack
pacman -S tesseract-data-deu

然后,您可以将 -l LANG 参数传递给 OCRmyPDF,以提示它应该搜索哪些语言。可以使用 -l eng+fra(英语和法语)或 -l eng -l fra 请求多种语言。

Gentoo

在 Gentoo 上,app-text/tessdata_fast 软件包(app-text/tesseract 依赖于它)处理 Tesseract 语言。它接受 USE 标志来选择应安装哪些语言,这些可以在 /etc/portage/package.use 中设置。或者,可以在 /etc/portage/make.conf 中全局设置 L10N USE 扩展。这将为所有软件包(例如包括 aspell)启用这些语言。

# Display a list of all Tesseract language packs
equery uses app-text/tessdata_fast

# Add English and German language support for Tesseract only
echo 'app-text/tessdata_fast l10n_de l10n_en' >> /etc/portage/package.use

# Add global English and German language support (the `l10n_` from equery has to be omitted)
echo L10N="de en" >> /etc/portage/make.conf

# update system to reflect changed USE flags
emerge --update --deep --newuse @world

然后,您可以将 -l LANG 参数传递给 OCRmyPDF,以提示它应该搜索哪些语言。可以使用 -l eng+fra(英语和法语)或 -l eng -l fra 请求多种语言。

macOS

您可以通过使用 Homebrew 安装包含所有语言包的 Tesseract 来安装附加语言包。

Docker

OCRmyPDF Docker 镜像的用户应将语言包安装到派生的 Docker 镜像中,具体方法在该部分中描述

Windows

Chocolatey 提供的 Tesseract 安装程序目前仅包含英语。要安装其他语言,请从 https://github.com/tesseract-ocr/tessdata/ 下载相应的语言包(.traineddata 文件),并将其放置在 C:\\Program Files\\Tesseract-OCR\\tessdata 中(或 Tesseract OCR 安装的任何位置)。

自定义语言包

如果您已对 Tesseract 进行了微调或训练并生成了自定义的训练数据,您可以将 customlang.traineddata 文件复制到 Tesseract 的“tessdata”文件夹中,然后使用 -l customlang 参数告诉 OCRmyPDF 将该语言传递给 Tesseract。