![pdftotext 不输出希伯来字符](https://linux22.com/image/514656/pdftotext%20%E4%B8%8D%E8%BE%93%E5%87%BA%E5%B8%8C%E4%BC%AF%E6%9D%A5%E5%AD%97%E7%AC%A6.png)
我在用着pdf的pdf转文本从 Ubuntu 上的一些希伯来语 pdf 文件中获取文本。
在我的本地机器上,这工作得很好。然后我尝试在另一台机器上执行此操作,但希伯来语字符没有显示在文本文件中。我确认我有语言包(请参阅下文我为什么这么认为)。我还可以在哪里查找问题?
>> tail -2 /etc/xpdf/xpdfrc
include /etc/xpdf/includes
>> cat /etc/xpdf/includes
# This file was automatically generated by /usr/sbin/update-xpdfrc.
# Instead, add or remove files in /etc/xpdf/ then run
# /usr/sbin/update-xpdfrc to regenerate this file.
include /etc/xpdf/xpdfrc-latin2
include /etc/xpdf/xpdfrc-thai
include /etc/xpdf/xpdfrc-greek
include /etc/xpdf/xpdfrc-turkish
include /etc/xpdf/xpdfrc-arabic
include /etc/xpdf/xpdfrc-hebrew
include /etc/xpdf/xpdfrc-cyrillic
>> cat /etc/xpdf/xpdfrc-hebrew
#----- begin Hebrew support package (2003-feb-16)
unicodeMap ISO-8859-8 /usr/share/xpdf/hebrew/ISO-8859-8.unicodeMap
unicodeMap Windows-1255 /usr/share/xpdf/hebrew/Windows-1255.unicodeMap
#----- end Hebrew support package
>> ls /usr/share/xpdf/hebrew/
ISO-8859-8.unicodeMap Windows-1255.unicodeMap
答案1
幸运的是,友好的 Ubuntu 用户让安装语言变得非常简单。只需在 shell 中输入以下命令:
sudo apt-get install language-support-he language-pack-he
您会注意到它为许多其他子系统(例如 HSpell、Myspell 和 PostgreSQL)添加了希伯来语支持,并且还安装了一些希伯来语字体。
为了达到更好的效果,请安装以下希伯来字体:
sudo apt-get install culmus culmus-fancy xfonts-efont-unicode xfonts-efont-unicode-ib xfonts-intl-european msttcorefonts
最后,确保在运行 pdftotext 时指定 UTF-8 编码格式,因为它可能无法自动检测您的源:
pdftotext -enc UTF-8 input.pdf output.txt
答案2
你应该看看TET,文本提取工具包由 PDFlib.com 提供(由《PostScript 和 PDF Bible》的作者 Thomas Merz 运营)。
TET 主要是一个用于其他 PDF 处理应用程序的库,但它们也……
- ...在其基础上构建了一个强大的命令行工具,称为“TET iFilter”(免费啤酒);
- ...构建了一个 Acrobat 插件(免费)
这个可以从 PDF(包括 CJK、希伯来语、阿拉伯语)中提取非 ASCII 文本,将连字符恢复为其原始字符对或三个字符,并且总体上它可以超越 Adobe 自己的文本提取功能……
它适用于 Windows、Linux、Mac OS X 和各种 Unix 系统。