Как сохранить текстовый файл в формате UTF-8, используя pdftotext - PullRequest
7 голосов
/ 28 октября 2010

Я использую pdftotext с открытым исходным кодом для преобразования PDF в текстовые файлы. Как я могу сохранить текстовые файлы в формате UTF-8, чтобы я мог сохранить все символы ударения в текстовых файлах. Я использую приведенную ниже команду для преобразования, которая извлекает содержимое в текстовый файл, но не может видеть символы с акцентом.

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

Пожалуйста, помогите мне решить эту проблему.

Заранее спасибо,

Ответы [ 2 ]

18 голосов
/ 28 октября 2010

Вы можете получить список доступных кодировок, используя команду:

pdftotext -listenc

и выберите правильный, используя аргумент -enc. Мой здесь, кажется, делает UTF-8 по умолчанию. т. е. ваш "UTF-8" излишний

pdftotext -enc UTF-8 your.pdf

Возможно, вы захотите проверить свою локаль (LC_ALL, LANG, ...).

EDIT: Я скачал следующий PDF: http://www.i18nguy.com/unicode/unicodeexample.pdf

и преобразовал его на ПК с Windows 7 (немецкий) и XPDF 3.02PL5 с помощью команды:

pdftotext.exe -enc UTF-8 unicodeexample.pdf

Текстовый файл определенно имеет кодировку UTF-8, так как все символы отображаются правильно. Для чего вы используете текстовый файл? Если вы отображаете его через веб-приложение, кодировка содержимого может быть просто неправильной, а текстовый файл преобразован так, как вы этого хотели.

Перепроверьте, используя браузер (принудительное кодирование в Firefox по ISO-8859-1 и UTF-8) или шестнадцатеричный редактор.

0 голосов
/ 28 октября 2010

Все становится немного грязно, поэтому я добавляю еще один ответ.

Я разобрал PDF, и, скорее всего, у меня возникла бы «проблема» с использованным шрифтом:

  • открыть файл PDF в Acrobar Reader
  • выделить весь текст на странице
  • скопируйте его и вставьте в текстовый редактор с поддержкой Unicode («скрытого» распознавания текста нет, поэтому вы копируете фактические данные)

Вы увидите, что кодовые точки, с которыми вы сталкиваетесь, не те, которые вы видите в программе чтения PDF. Каким бы ни был шрифт, он может иметь отображение, отличное от того, которое определено в стандарте Unicode. Таким образом, ваш контент «неоправдан», и вы ничего не можете с этим поделать.

...