Библиотека сайта rus-linux.net
Ошибка базы данных: Table 'a111530_forumnew.rlf1_users' doesn't exist
Как преобразовать документ формата 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"
.