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


41

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

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


2
Word 2013 может открывать PDF-файлы. Не идеально. Но выполнимо
пратнала

Может быть связано: superuser.com/a/455278/13787
Стивен Р. Лумис

Ответы:


54

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

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

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

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

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

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


2
обратная связь 5 лет спустя: никаких существенных улучшений: мне пришлось преобразовать его в HTML (используя acrobat x), а затем вставить каждую строку в таблицу MSword. (Сохранение для word или excel или txt просто испортило все, копирование прошлого из chrome также не работало вообще). Все еще жду (очень) умного программного обеспечения.
JinSnow

щелкните правой кнопкой мыши по таблице, выбрав «копировать с форматированием», также с указанными выше ограничениями
JinSnow,

1
Поскольку это принятый ответ, я предлагаю вам также упомянуть (более новый) вариант, который pratnala написал в своем комментарии, - открыть PDF непосредственно из Word 2013. На некоторых PDF-файлах, которые я пробовал, он давал лучшие результаты, чем все вышеперечисленное программное обеспечение.
BornToCode

8

Другой вариант - скачать и начать использовать бесплатный просмотрщик PDF, Foxit (это хорошо). Затем вы можете «Сохранить как» и выбрать .txt, чтобы преобразовать его в текстовый файл. Это сохранит все форматирование. Не знаю, можете ли вы сделать то же самое в Adobe, потому что я перестал использовать его некоторое время назад, когда я перешел на Foxit.


«Сохранить как ... текст» работал для меня с несколькими бесплатными программами просмотра PDF.
Джефф

Я использую Foxit, и просто попробовал, я бы не сказал, что это сохранило форматирование. И все, что я хотел, это приличные окончания строк и каждый абзац в виде абзаца.
РРР

Используя txt, вы потеряете все форматирование: шрифты, полужирный шрифт, курсив, цвета и, конечно, более продвинутые опции
skan

Foxit Reader отлично сработал для меня
Майкл Транчида

5

Существует очень хороший онлайн-инструмент под названием Sej-da . Это имеет дело с Продвинутой Манипуляцией PDF. Там нет программного обеспечения для загрузки. Поскольку это новый онлайн-инструмент, он все еще находится в бета-версии. Это позволяет извлекать текст из PDF, а также предоставляет множество других функций PDF

http://www.sejda.com/

Краткий видеообзор функций Сейда был сделан 14 ноября 2012 года редакцией 3, его можно найти здесь:

http://revision3.com/tzdaily/sejda-online-pdf


1
Один может еще загрузить инструмент командной строки: sejda.org/download (я не думаю , что это позволяет извлекать текст с форматированием?)
Arjan

Я уже рекомендовал Сейду выше Арджана
Симон

1
А? Я просто имел в виду: вы говорите, что это онлайн-инструмент, но вы также можете скачать то же самое. Кроме того, вдаваясь в подробности: я не думаю, что это сохранит форматирование, как об этом просили?
Арджан

Я хорошо знаю, что сохранение формата было запрошено, но если вы не попробуете, вы никогда не узнаете.
Саймон

Поскольку это бесплатный инструмент с множеством функций, и он даже не вышел из бета-версии - терять нечего, но попробуйте. Со временем его набор функций, вероятно, будет расширен, но пока не могу пожаловаться.
Саймон

5

Откройте файл PDF с помощью браузера (проверены Google Chrome и Firefox), а затем скопируйте туда свой текст.


К сожалению, это не сработало для меня в Firefox.
Реб

близко. FF сохранил размеры шрифта как минимум. Хром с треском провалился, даже без перевода строки.
nd34567s32e

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

4

Вы можете использовать Adobe Acrobat Pro для этого.

Для таблиц: в Acrobat 9/10 появилась функция выбора таблиц. В Acrobat X вы можете просто нажать «Сохранить как»> «Электронная таблица»> «Excel». Он даже объединяет страницы в одну длинную электронную таблицу. Потрясающая особенность.

Для текста: аналогичная функция существует для экспорта в MS Word. Сохранить как> Word> Word Doc.

Источники:


0

Foxit будет переключаться между отображением исходного файла в виде обычного PDF или в виде текста, нажимая Ctrl + 6 (с небольшим изменением уровня масштабирования в текстовом режиме нет большого скачка в положении назад и вперед между чтением и копированием)


0

Я нашел это очень полезным ( Удалить разрывы строк ):

Вот полезный трюк, чтобы быстро решить эту проблему без необходимости удалять все разрывы строк вручную. По сути, все, что он делает, это автоматически заменяет все нежелательные разрывы строк одним пробелом, заставляя весь текст объединяться в один абзац:

1- скопируйте нужный текст из PDF.

2 - вставить в новый документ Word.

3- нажмите «изменить», затем «заменить»

4- убедитесь, что вы находитесь в поле «найти что»

5- нажмите «больше», затем «специальные»

6- выберите «знак абзаца» (верхняя часть списка)

7- щелкните в поле «заменить на»

8- нажмите пробел один раз

9- нажмите «заменить все»

10 - нажмите «ОК», затем закройте окно «Найти и заменить».


-1

Вы можете скопировать из Adobe Reader в MS Excel и отформатировать (таблица), как вы хотите, а затем скопировать и вставить из Excel. Это решение прекрасно работает. Вам не нужно покупать дорогой Adobe профессиональный экземпляр.


Вопрос обсуждает текст. Как вы думаете, это было бы хорошим общим решением для текста, включая преобразование форматирования в коды HTML?
fixer1234

-1

Я пытался сохранить текст и формат PDF, который был организован в виде таблицы. В Acrobat Professional я понял, что есть опция «Сохранить как», которая позволяет сохранять документы в формате Excel. Это хорошо сработало для моих нужд. Я также заметил, что есть опция «Сохранить как Word». Я не пробовал это все же.


2
Это дублирует ответ пользователя 156787.
fixer1234
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.