Содержание
Есть множество различных причин, почему вам нужно конвертировать PDF файл в редактируемый текстовый файл, мы здесь не будем обсуждать причины, но обсудим способ как это можно осуществить в Linux. Возможно, вам нужно посмотреть(изменить) старый документ, но у вас есть лишь PDF версия. Преобразовать PDF файл в Windows, очень легко, но что делать, если вы используете Linux? Думаю этим вопросом задавались многие.
Не стоит беспокоиться. Мы покажем вам, как очень быстро и легко конвертировать PDF файлы в редактируемый текст с помощью инструмента командной строки(терминал) с помощью пакета под названием pdftotext, что является частью утилиты "Poppler-Utils". Этот инструмент может быть уже установлен по умолчанию в системе. Чтобы проверить, установлен ли в вашей системе pdftotext, нажмите "Ctrl + Alt + T", чтобы открыть окно терминала. Введите следующую команду в командной строке и нажмите клавишу "Enter".
dpkg -s poppler-utils
Если пакет установлен, хотя должен быть установлен так как проверив в версии Ubuntu 14.04 LTS мы видим следующий текст который нам сообщает, что пакет уже установлен в системе:
Package: poppler-utils
Status: install ok installed
Priority: optional
Section: utils
Installed-Size: 432
Maintainer: Ubuntu Developers <[email protected]>
Architecture: i386
Multi-Arch: foreign
Source: poppler
Version: 0.24.5-2ubuntu4
Replaces: pdftohtml, xpdf-reader, xpdf-utils (<< 3.02-2~)
Provides: pdftohtml, xpdf-utils
Depends: libc6 (>= 2.4), libcairo2 (>= 1.12.0), libfreetype6 (>= 2.2.1), libgcc1 (>= 1:4.1.1), liblcms2-2 (>= 2.2+git20110628), libpoppler44 (>= 0.24.5), libstdc++6 (>= 4.1.1)
Breaks: xpdf-utils (<< 3.02-2~)
Conflicts: pdftohtml
Description: PDF utilities (based on Poppler)
Poppler is a PDF rendering library based on Xpdf PDF viewer.
.
This package contains command line utilities (based on Poppler) for getting
information of PDF documents, convert them to other formats, or manipulate
them:
* pdfdetach -- lists or extracts embedded files (attachments)
* pdffonts -- font analyzer
* pdfimages -- image extractor
* pdfinfo -- document information
* pdfseparate -- page extraction tool
* pdftocairo -- PDF to PNG/JPEG/PDF/PS/EPS/SVG converter using Cairo
* pdftohtml -- PDF to HTML converter
* pdftoppm -- PDF to PPM/PNG/JPEG image converter
* pdftops -- PDF to PostScript (PS) converter
* pdftotext -- text extraction
* pdfunite -- document merging tool
Homepage: http://poppler.freedesktop.org/
Original-Maintainer: Loic Minier <[email protected]>
1. В том случае если оказалось, что в вашей версии дистрибутива пакет pdftotext не установлен, введите следующую команду в командной строке и нажмите клавишу "Enter".
sudo apt-get install poppler-utils
2. Для примера, давайте представим, что у нас в домашней директории имеется файл с названием Book.pdf, какую команду в нашем случае нужно выполнить чтобы преобразовать данный файл в файл текстового формата для чтения и редактирования например с помощью текстового редактора Gedit или любого другого.
pdftotext /home/linux/Документы/Book.pdf /home/linux/Документы/Book.txt
В нашем случае linux это моя учетная запись, вы изменяйте на вашу, далее файл Book.pdf с которым мы и проводим опыты, далее через пробел мы так же прописываем путь в ту же директорию где нам создать готовый текстовый файл с результатом конвертации.
В моем случае я забросил в папку документы простенький документ почти на 3 метра, справочник по HTML, далее выполняю команду:
pdftotext CSS\ Manual.pdf CSS\ Manual.txt
3. Конечно готовый преобразованный текст может иметь разрывы строк которых вы возможно и не хотите как и я. Разрывы строк вставляются после каждой строки текста в файле PDF. Чтобы убрать разрывы и лишнюю табуляцию, мы можем сохранить макет нашего pdf документа (заголовки и многое другого) от оригинального PDF файла в текстовом файле преобразовав с помощью специального флага "-layout".
В итоге готовая команда уже будет иметь следующий вид:
pdftotext -layout /home/linux/Документы/Book.pdf /home/linux/Документы/Book.txt
проверив результаты конвертации, скажу честно, уже все намного в более порядочном виде, но все же имеется много мелочей которые необходимо отредактировать.
4. Вам нужно преобразовать не целый документ, а определенный диапазон страниц от и до, например с 10 по 100, как будет смотреться готовая команда для конвертации спросите вы. Нажмите "Ctrl + Alt + T", чтобы открыть окно терминала, далее введите следующую команду в командной строке и нажмите клавишу "Enter".
pdftotext -f 10 -l 100 /home/linux/Документы/Book.pdf /home/linux/Документы/Book.txt
5. Как преобразовать PDF файл который зашифрован паролем от владельца спросите вы? Решение данного вопроса так же имеется и имеет следующую готовую комбинацию:
pdftotext -0pw 'пароль' /home/linux/Документы/Book.pdf /home/linux/Документы/Book.txt
6. Как преобразовать файл который защищен паролем, не зашифрован как в варианте выше, так же имеется простое решение, в терминале выполняем готовую комбинацию, пример:
pdftotext -upw 'пароль' /home/linux/Документы/Book.pdf /home/linux/Документы/Book.txt
7. Вы можете также указать Тип конца строки, символ, который добавляется в преобразованный текст. Это особенно полезно, если вы планируете использовать файл в разных операционных системах, таких как Windows или Mac. Чтобы сделать это, используйте флаг "-eol" (символ в середине флага является строчной буквой "o", не ноль), затем пробел и указываем окончания для строк который вы хотите использовать ("Unix", "Dos", или "Mac").
pdftotext -eol unix /home/linux/Документы/Book.pdf /home/linux/Документы/Book.txt
Если вам мало информации по возможности преобразования pdf документов в разнообразные форматы, вы всегда можете прочесть справку, выполнив в терминале команду - man pdftotext. На этом пожалуй материал завершен, если у вас будут вопросы, пожалуйста, спрашивайте в комментариях к материалу ниже, всем удачи.
Лицензия: CC BY-SA 4.0
Благодарность автору!