Innocent
Янв. 23, 2009 01:04:17
Здравствуйте.
Известная утилита pdftk может выцеплять и записывать метаданные из PDF-документа в текстовый файл. При этом русскоязычные метаданные выводятся в этот текстовый файл в виде цифровых кодов. Латинские буквы выводятся нормально. Пример:
InfoKey: Keywords
InfoValue: ПРОБА
Кодами в данном случае выведено русское слово ПРОБА. Последующая смена кодировки этого текстового файла ни к чему не приводит, так как ПРОБА воспринимаются уже не как коды, а как набор символов, одинаковый для всех кодировок (код < 128).
Поэтому моя задача - преобразовать эти коды в нормальный читабельный вид. Посему несколько вопросов:
1. Что это за кодировка такая, в которой каждый символ кириллицы кодируется семью знаками? Например П это П
Как я понимаю, это способ отображения юникода?
2. Как бы поудобнее и побыстрее преобразовать такие коды в русский текст (чтобы не писать питоновский модуль, который будет парсить последовательно по 7 символов кода, преобразуя их в символ кириллицы)? Есть ли линуксовые утилиты, которые этим занимаются?
igor.kaist
Янв. 23, 2009 08:01:41
Ээээ… П это П?? Или форум съедает.. Заверни в тег code, дай нормальный пример..
Innocent
Янв. 23, 2009 10:15:48
Да, форум съедает.
Попробовал обернуть в тег code - не помогло. Выводится то же самое. Поэтому в кодах ставлю подчёркивание после амперсанта между символами:
Здравствуйте.
Известная утилита pdftk может выцеплять и записывать метаданные из PDF-документа в текстовый файл. При этом русскоязычные метаданные выводятся в этот текстовый файл в виде цифровых кодов. Латинские буквы выводятся нормально. Пример:
InfoKey: Keywords
InfoValue: &_#1055;&_#1056;&_#1054;&_#1041;&_#1040;
(Без подчёркиваний)
Кодами в данном случае выведено русское слово ПРОБА. Последующая смена кодировки этого текстового файла ни к чему не приводит, так как &_#1055;&_#1056;&_#1054;&_#1041;&_#1040; воспринимаются уже не как коды, а как набор символов, одинаковый для всех кодировок (код < 128).
Поэтому моя задача - преобразовать эти коды в нормальный читабельный вид. Посему несколько вопросов:
1. Что это за кодировка такая, в которой каждый символ кириллицы кодируется семью знаками? Например &_#1055; это П
Как я понимаю, это способ отображения юникода?
2. Как бы поудобнее и побыстрее преобразовать такие коды в русский текст (чтобы не писать питоновский модуль, который будет парсить последовательно по 7 символов кода, преобразуя их в символ кириллицы)? Есть ли линуксовые утилиты, которые этим занимаются?