Сброс отображений Unicode в тексте PDF

385
Aaron Brick

PDF-файлы часто содержат шрифты без явного сопоставления с Unicode, что мешает нам извлекать из них правильный текст - проклинаю вас, Adobe!

Мне нужно обрабатывать PDF-файлы в системе Linux. У меня есть несколько примеров с дефисными линиями, но для которых ни один инструмент, который я пробовал, не может определить дефисы; результаты всегда содержат много сломанных полуслов.

Есть ли способ внести пропущенные сопоставления символов вместо отбрасывания неопределенных символов?

0
Пожалуйста, поместите вышеуказанный комментарий в теле вопроса ([править] вопрос). Любая соответствующая информация должна быть там, а не в комментарии. Kamil Maciorowski 6 лет назад 0

1 ответ на вопрос

1
dirkt

Пример PDF закодирован правильно: он включает таблицы шрифтов в юникод, и если я попробую скопировать и вставить с помощью mupdf, дефис в Хлебникова во втором абзаце станет U + 00AD SOFT HYPHEN. Так что должна быть возможность объединить слова при желании с небольшой постобработкой.

К сожалению, для многих инструментов PDF поддержка юникода не работает.

Определение пробелов в PDF-файлах затруднительно, потому что формат PDF не описывает пробелы, он только описывает расположение глифов на странице. Таким образом, алгоритм угадывания пространства в ebook-convert кажется неоптимальным, но это не имеет ничего общего с кодировкой.

AFAIK, mupdfне включает в себя инструмент для пакетного извлечения текста, но поиск в Google находит, например, этот сторонний код. Я не пробовал это.

Похожие вопросы