Как преобразовать документ формата PDF в текстовый файл в терминале Linux
Оригинал: How to Convert a PDF File to Editable Text Using the Command Line in Linux
Автор: Lori Kaufman
Дата публикации: 9 ноября 2015 г.
Перевод: А.Панин
Дата перевода: 7 октября 2016 г.
Существует множество причин, по которым вам может понадобиться преобразовать документ формата PDF в текстовый файл. Возможно, вам нужно изменить старый документ и вас есть лишь его версия в формате PDF. Преобразование файлов PDF в ОС Windows не представляет каких-либо сложностей, но что делать в том случае, если вы используете Linux?
Не беспокойтесь, я продемонстрирую простую и рабочую методику преобразования файлов PDF в текстовые файлы с помощью утилиты с интерфейсом командной строки с именем pdftotext из пакета утилит "poppler-utils" . Эта утилита может быть уже установлена в вашей системе. Для проверки ее наличия в системе следует в первую очередь воспользоваться сочетанием клавиш "Ctrl+Alt+T" для открытия окна эмулятора терминала. Далее следует ввести следующую команду после приглашения командной оболочки и нажать клавишу "Enter" .
dpkg -s poppler-utils
Примечание: если в статье написано, что нужно ввести какую-либо команду, причем сама команда помещена в кавычки, следует вводить ее без кавычек за исключением тех случаев, когда в статье четко указано обратное.
Если утилита pdftotext не установлена, следует ввести следующую команду после приглашения командной оболочки и нажать клавишу "Enter" :
sudo apt-get install poppler-utils
После соответствующего запроса следует ввести свой пароль и нажать клавишу "Enter" :
В установленном пакете poppler-utils имеется множество других инструментов для преобразования документов формата PDF в различные форматы, осуществления манипуляций с файлами PDF и извлечения информации из этих файлов.
Следующая команда позволяет преобразовать файл PDF в текстовый файл. Воспользуйтесь сочетанием клавиш "Ctrl+Alt+T" для открытия окна эмулятора терминала, введите следующую команду после приглашения командной оболочки и нажмите клавишу "Enter" .
pdftotext /home/lori/Documents/Sample.pdf /home/lori/Documents/Sample.txt
Вам придется заменить указанные пути к файлам на пути к оригинальному файлу формата PDF и результирующему текстовому файлу соответственно. Кроме того, вам придется изменить приведенные имена файлов на имена ваших файлов.
Созданный утилитой текстовый файл может быть открыт таким же образом, как и любой другой текстовый файл в Linux.
Результирующий текст будет содержать символы новых строк в тех местах, в которых их не должно быть. Это объясняется тем, что символы новых строк вставляются после каждой строки текста в файле PDF.
Вы можете сохранить оригинальное форматирование вашего документа PDF (заголовки, примечания, разделение на страницы и.т.д.) в результирующем файле с помощью флага "-layout" :
pdftotext -layout /home/lori/Documents/Sample.pdf /home/lori/Documents/Sample.txt
Если вы хотите осуществить преобразование диапазона страниц файла PDF, вам придется использовать флаги "-f" и "-l" (это "L" в нижнем регистре) для указания номеров первой и последней страниц из диапазона для преобразования:
pdftotext -f 5 -l 9 /home/lori/Documents/Sample.pdf /home/lori/Documents/Sample.txt
Для преобразования файла PDF, зашифрованного с использованием пароля владельца, следует использовать флаг "-opw" (первым символом является буква "O" в нижнем регистре, а не цифра 0):
pdftotext -opw 'пароль' /home/lori/Documents/Sample.pdf /home/lori/Documents/Sample.txt
Замените строку "пароль" на пароль, с помощью которого был защищен оригинальный файл PDF. Убедитесь в том, что вы используете одинарные, а не двойные кавычки для выделения пароля.
Если же файл PDF зашифрован с использованием пароля пользователя, следует использовать флаг "-upw" вместо "-opw" . Остальная часть команды не должна изменяться.
Вы также можете указать набор символов новой строки, который будет использоваться в результирующем текстовом файле. Это особенно полезно в том случае, если вы планируете открывать этот файл в другой операционной системе, такой, как Windows или Mac OS, Для этой цели следует использовать флаг "-eol" (вторым символом является буква "O" в нижнем регистре, а не цифра 0), после которого должен следовать символ пробела и идентификатор выбранного набора символов новой строки ("unix" , "dos" или "mac" ).
Примечание: если вы не укажите имя результирующего текстового файла, утилита pdftotext автоматически использует имя файла PDF, заменив его расширение на ".txt" . Например, имя файла "file.pdf" будет преобразовано в "file.txt" . Если вместо имени текстового файла использовать "-" , результирующий текст будет отправлен в стандартный поток вывода утилиты, что означает, что текст будет выводиться в окно эмулятора терминала и не будет сохраняться в текстовом файле.
Для закрытия окна эмулятора терминала следует нажать на кнопку "X" в его левом верхнем углу.
Для получения дополнительной информации об утилите pdftotext следует ввести команду "man page pdftotext" после приглашения командной оболочки в окне эмулятора терминала и нажать клавишу "Enter" .
http://rus-linux.net/MyLDP/consol/convert-pdf-file-to-text-in-command-line.html
|