Как я могу скопировать текст из PDF при сохранении форматирования?

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

Сегодняшняя сессия вопросов и ответов приходит к нам благодаря SuperUser — подразделению Stack Exchange, группы веб-сайтов вопросов и ответов, управляемой сообществом.

Вопрос

Читатель SuperUser Colen ищет способ извлечения текста из PDF-файлов при сохранении форматирования:

Когда я копирую текст из файла PDF в текстовый редактор, он оказывается искаженным различными способами. Форматирование как жирный шрифт и курсив теряются; мягкие разрывы строк внутри абзаца текста преобразуются в жесткие разрывы строк; тире, разбивающие слово на две строки, сохраняются даже тогда, когда их не должно быть; а одинарные и двойные кавычки заменяются на? приметы.

В идеале я хотел бы иметь возможность копировать текст из PDF и преобразовывать форматирование в HTML-коды, «умные кавычки», преобразованные в «и‘ », а также переносить строки правильно. Есть какой-либо способ сделать это?

Есть ли у Колена быстрый и простой способ получить текст, не жертвуя форматированием?

Ответ

Участник SuperUser Frabjous предлагает решение в сочетании с большой дозой предостережения:

Во-первых, вы должны понять, что такое PDF. PDF-файлы предназначены для имитации печатной страницы и предназначены только для формата вывода, а не для формата ввода. PDF — это, в основном, карта, содержащая точное расположение символов (отдельных букв или знаков препинания и т. д.) или изображений. В большинстве случаев PDF-файл даже не хранит информацию о том, где заканчивается одно слово и начинается другое, причем гораздо меньше таких вещей, как мягкие разрывы или жесткие разрывы для окончаний абзаца.

(Несколько последних PDF-файлов действительно хранят некоторую информацию об этом материале, но это новая технология, и вам посчастливится найти подобные PDF-файлы. Даже если бы вы это сделали, программа просмотра PDF могла бы об этом не знать.)

В любом случае, ваше программное обеспечение должно реализовывать своего рода «искусственный интеллект», чтобы просто извлекать из местоположений отдельных персонажей, что такое слово, что такое абзац и так далее. Разное программное обеспечение будет делать это лучше, чем другие, и это также будет зависеть от того, как был создан PDF. В любом случае, вы никогда не должны ожидать идеальных результатов. Наличие выходного PDF не совпадает с исходным документом. Гораздо лучше попытаться получить это, если вы можете.

Стандартное решение вашей проблемы — использовать Adobe Acrobat Professional (дорогой, а не бесплатный ридер) для преобразования PDF в HTML. Даже это не даст идеальных результатов.

Существует бесплатное программное обеспечение, которое можно использовать для извлечения текста из PDF-файлов с некоторым сохранением форматирования, но опять же, не ожидайте отличных результатов. См., Например, калибр (который может быть преобразован в формат RTF), pdftohtml/pdfreflow или текстовый процессор AbiWord (со всеми включенными подключаемыми модулями импорта/экспорта). Существует также плагин импорта PDF для OpenOffice.

Но, пожалуйста, не ожидайте совершенства с любым из этих результатов. Вы идете против зерна здесь. PDF просто не подразумевается как редактируемый формат ввода.

Если у вас возникли проблемы с определением, с какого инструмента начать, Caliber — настоящий документ Swiss Army нож. Вы также можете использовать его для преобразования PDF-файлов для использования в вашей программе для чтения электронных книг и организации вашей библиотеки электронных книг/документов.

Есть что добавить к объяснению? Звук выключен в комментариях. Хотите узнать больше ответов от других опытных пользователей Stack Exchange? Ознакомьтесь с полной веткой обсуждения здесь.

Оцените статью
TutoryBird.Ru
Добавить комментарий