pdftk – работаем с PDF в консоли

Стандартный

pdftk

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

Возможности программы:

умеет объединять и разделять PDF файлы
умеет извлекать или добавлять вложения
умеет добавлять и удалять нужные/ненужные файлы
умеет шифровать и расшифровывать документ
умеет поворачивать документ на 90° или 180°
есть возможность восстановить поврежденный документ
умеет добавлять «водяные знаки» либо другие знаки на передний план документа.

Пришлось немного изучить данную утилиту для работы с PDF файлами в моей любимой “малинке”. Raspberry PI 3 конечно же не сравниться с ноутбуками Acer, но для моих рабочих нужд хватает. Итак, установим  pdftk  в Ubuntu/Linux Mint/Elementary OS/ Raspberry PI и т.д. командой в Терминале:

sudo apt-get install pdftk

Теперь рассмотрим несколько примеров использования утилиты.



Для объединения нужных PDF файлов, например 1.pdf 2.pdf 3.pdf и так далее, выполним команду:

pdftk 1.pdf 2.pdf 3.pdf cat output newfile.pdf

В итоге у нас получится новый файл newfile.pdf. Но перед этим естественно вы должны перейти в Терминале в каталог с нужными файлами. Например наши файлы находятся в Домашнем каталоге в папке Documents. Перейдем в эту папку командой:

cd ~/Documents

Ну а теперь можно выполнять любые манипуляции с PDF файлами. Чтобы объединить все файлы, не перечисляя их, нужно выполнить команду:

pdftk *.pdf cat output newfile.pdf

Если нам нужно вытянуть из документа input.pdf только страницы с 5 по 10, то нужно выполнить команду:

pdftk input.pdf cat 5-10 output output.pdf

В итоге мы получим документ output.pdf со страницами 5-10.

А если нужно вытянуть страницы, например, 1, 6, 9, 10, то команда будет следующей:

pdftk input.pdf cat 1 6 9 10 output output.pdf

Если нужно разбить многостраничный файл на одиночные страницы, то нужно выполнить простую команду:

pdftk 11.pdf burst

В итоге файл 11.pdf будет разбит на множество одиночных страниц.

Как удалить ненужные страницы? Допустим у нас есть документ, в котором есть 24 страницы. Если нужно удалить из документа 11.pdf страницы 1-7, 23, то выполним команду:

pdftk 11.pdf cat 8-22 24-end output New.pdf

В итоге мы получим новый документ New.pdf без ненужных страниц.

Чтобы попробовать восстановить “битый” файл broken.pdf выполним команду:

pdftk broken.pdf output new.pdf

Чтобы повернуть все страницы на 180 градусов нужно выполнить:

pdftk 11.pdf cat 1-endsouth output mypdf.pdf

Чтобы повернуть все страницы на 90 градусов по часовой стрелке нужно выполнить:

pdftk 11.pdf cat 1-endeast output mypdf.pdf

Чтобы повернуть все страницы на 90 градусов против часовой стрелки нужно выполнить:

pdftk 11.pdf cat 1-endwest output mypdf.pdf

Чтобы добавить “водяной знак” в документ, нужен PDF файл с логотипом или надписью, например bg.pdf. Теперь выполним команду:

pdftk 11.pdf background bg.pdf output output_bg.pdf

В итоге на всех страницах созданного файла output_bg.pdf должен появится “водяной знак” из файла bg.pdf. Но я так и не смог добиться пока положительного результата.

Про многие другие возможности программы вы узнаете почитав мануал:

man pdftk

p.s. Кстати, у  утилиты pdftk есть графическая обертка – pdfchain

sudo apt-get install pdfchain

 


Leave a Reply

Статьи