如何使用pdftotext将文本文件保存为UTF-8格式
题
我正在使用pdftotext开源工具将PDF转换为文本文件。如何以UTF-8格式保存文本文件,以便保留文本文件中的所有重音字符。我正在使用以下命令进行转换,从而将内容提取到文本文件中,但是看不到任何带重音符号。
pdftotext -enc UTF-8 book1.pdf book1.txt
请帮助我解决此问题。
预先感谢
解决方案
您可以使用以下命令获取可用编码的列表: 通用标签
并使用-enc参数选择合适的一个。我的默认情况下似乎在做UTF-8。即您的“ UTF-8”是多余的 通用标签
您可能要检查您的语言环境(LC_ALL,LANG等)。
编辑: 我下载了以下PDF: http://www.i18nguy.com/unicode/unicodeexample.pdf
并使用以下命令在Windows 7 PC(德语)和XPDF 3.02PL5上进行了转换: 通用标签
文本文件绝对是UTF-8编码的,因为所有字符都可以正确显示。您正在使用文本文件做什么?如果通过Web应用程序显示文本,则文本文件可能已按您希望的方式转换,而您的内容编码可能只是错误的。
使用浏览器(将Firefox中的编码强制为ISO-8859-1和UTF-8)或使用十六进制编辑器进行仔细检查。
其他提示
事情有点混乱,所以我要添加另一个答案。
我拆开了PDF,而我最好的猜测是使用字体的“问题”:
- 在Acrobar Reader中打开PDF文件
- 选择页面上的所有文本
- 将其复制并粘贴到支持Unicode的文本编辑器中(没有“隐藏的” OCR,因此您正在复制实际数据)
您将看到最终得到的代码点不是在PDF阅读器中看到的代码点。无论字体是什么,它都可能具有与Unicode标准中定义的映射不同的映射。因此,您的内容是“糟糕的”,对此您无能为力。
不隶属于 StackOverflow