2010-10-28 157 views
3

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

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

请帮我解决这个问题。

由于提前,

回答

9

你可以使用命令可用编码的列表:

pdftotext -listenc 

,并选择使用-enc说法是正确的。我的这里默认是UTF-8。即你的 “UTF-8” 是superflous

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)或使用十六进制编辑器进行仔细检查。

+0

感谢您的回复。我无法使用pdftotext -listenc获取编码列表。我也在使用你指定的命令,但对我仍然没有用处。您能否寄给我您的邮件地址,以便我可以将您的PDF转发给您测试?再次感谢。 – Amar 2010-10-28 05:42:57

+0

我正在使用版本3.02的pdftotext – Amar 2010-10-28 05:44:11

+1

你在哪个平台上运行这个平台?某种类型的Unix/Linux或Windows? 从版本号判断,它看起来像是使用了过时的(原始的)XPDF版本。与此同时,大多数Linux发行版都转换为Poppler。我说:“pdftotext版本0.14.4”,来自Poppler(2010年发布的版本)。 – icanhasserver 2010-10-28 06:30:14

-4

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

我把PDF除了和我最好的猜测是使用“问题”的字体:

  • 在Acrobar Reader中打开PDF文件
  • 选择页面
  • 上的所有文本复制并粘贴到一个统一的文本编辑器(有没有“隐藏” OCR,所以你复制实际数据)

你会看到,你最终的编码点是不是那些你在PDF中看到了阿德。无论字体是什么,它的映射可能都不同于Unicode标准中定义的映射。因此,你的内容是“前”,你可以做的不多。

相关问题