如何使用pdftotext以UTF-8格式保存文本文件

时间:2010-10-28 05:07:55

标签: utf-8 pdftotext

我正在使用pdftotext开源工具将PDF转换为文本文件。如何以UTF-8格式保存文本文件,以便保留文本文件中的所有重音字符。我使用以下命令进行转换,将内容提取到文本文件但不能看到任何重音字符。

pdftotext -enc UTF-8 book1.pdf book1.txt

请帮我解决此问题。

提前致谢,

2 个答案:

答案 0 :(得分:18)

您可以使用以下命令获取可用编码列表:

pdftotext -listenc

并使用-enc参数选择正确的一个。我这里似乎默认使用UTF-8。即你的“UTF-8”是超级的

pdftotext -enc UTF-8 your.pdf

您可能想要检查您的语言环境(LC_ALL,LANG,...)。

修改 我下载了以下PDF: http://www.i18nguy.com/unicode/unicodeexample.pdf

使用以下命令在Windows 7 PC(德语)和XPDF 3.02PL5上进行转换:

pdftotext.exe -enc UTF-8 unicodeexample.pdf

文本文件肯定是UTF-8编码的,因为所有字符都正确显示。你在用什么文本文件?如果您通过Web应用程序显示它,您的内容编码可能只是错误的,而文本文件已按您的意愿转换。

使用浏览器(在Firefox中强制编码为ISO-8859-1和UTF-8)或使用十六进制编辑器进行仔细检查。

答案 1 :(得分:-3)

事情变得有些混乱,所以我又添加了另一个答案。

我把PDF拆开了,我最好的猜测是使用字体的“问题”:

  • 在Acrobar Reader中打开PDF文件
  • 选择页面上的所有文字
  • 将其复制并粘贴到支持Unicode的文本编辑器中(没有“隐藏”OCR,因此您要复制实际数据)

您会看到您最终得到的代码点不是您在PDF阅读器中看到的代码点。无论字体是什么,它都可能具有与Unicode标准中定义的映射不同的映射。因此,您的内容是“非常”,而且您无能为力。