Способы объединения pdf-файлов


gemelen - Posted on 24 Июнь 2008

Иногда необходимо объединить некоторое количество PDF файлов в один. Это могут быть и главы книги и какие-либо иные, связанные по смыслу или содержимому файлы, которые вам понадобилось представить в виде одного. Приведем несколько способов, позволяющих сделать это.

1. Использование GhostScript напрямую. Ghostscript - пакет, позволяющий вам просматривать или печатать PostScript и PDF файлы, а также конвертировать их в другие форматы. Данный пакет достаточно часто используется, но вместе с тем, немногие пользуются его возможностями для объединения файлов PDF.

$ gs -dBATCH -dNOPAUSE -q -sDEVICE=pdfwrite -sOutputFile=single.pdf part1.pdf part2.pdf

  • gs -- собственно вызов Ghostscript
  • -dBATCH -- завершить работу Ghostscript после завершения объединения
  • -dNOPAUSE -- производить операции без запросов пользователю
  • -q -- не выводить сообщений (тихий режим)
  • -sDEVICE=pdfwrite -- использовать встроенную утилиту для работы с PDF файлами
  • -sOutputFile=single.pdf -- имя результирующего файла
Если вам часто приходится производить операцию объединения, то можно добавить в настройки вашей оболочки следующую строку, убыстряющую вызов:

$ alias pdflink='gs -dBATCH -dNOPAUSE -q -sDEVICE=pdfwrite -sOutputFile=./result.pdf'

Аналогично gs работает и с PS файлами.

2. joinPDF - консольная утилита для объединения, написанная на Java и требующая JRE для своей работы. Использование достаточно тривиальное:

$ joinpdf result.pdf part1.pdf part2.pdf

3. Способ для пользователей KDE: kprinter, служащий GUI для работы с Ghostscript. Нужно выбрать вывод в файл соответствующего типа (PDF,PS) и добавить объединяемые части в порядке их следования в результирующем файле.

3
Ваша оценка: Ничего Рейтинг: 3 (1 vote)

Хорошо, а без консоли это работает?

Отлично, добавил аллиас на pdflink, спасибо!

www.pdftools.ws в онлайне

"К сажелению тут необходимы базовые знания о консоли в unix, чтобы можно была зайти в нужную папку."

ничего сложного, заходим в папочку с pdfами и правой кнопочкой мышки "открыть в терминале" или "open in terminal" открывается консоль в данной папке.

p.s. Лично пользую pdfshuffler. (c графической мордой)

ещё есть pdftk, для более разнообразных действий. зависимостей, вроде как, нет.

эта штука единственная которая у меня правильно заработала.
приведу примерчик её и спользования вырезанный из документации чтобы долго не искать

pdftk in1.pdf in2.pdf cat output out1.pdf

Сегодня перед мной стояла на первый взгляд тривиальная задача.
Собрать из N-ого количества pdf файлов один. Ксажелению свежескаченный Acrobat 9 Pro не принимал ключики (скорее всего пере устоновкой надо было отключтся от сети) и лекарства для него не отыскалось. Софт для выполнения поставленнной задачи под мой Mac OS X нашелся только платны платый. Онлайн pdf редактор не обрабатывал "большие" - чуть более 512 кб файлы. Запускать вирутальную машину нехотелось с Windows XP. Погуглив я наткунлся на Unix утилку Pdf Tool Kit (далее pdftk) .
В портах MacPorts таковая была найдена:

!) На ваше Mac OS X должны быть установлен пакет MacPorts.(спрашивайте помогу с установкой) http://guide.macports.org/#installing

1) Устронавливаем pdftk
Открываем программу Terminal и пишем:
1.1)

$ sudo port selfupdate

водим пароль администратора системы и ждем пока обновится дерево портов
1.2)

$ sudo port install pdftk

вводим пароль админа еще раз и ждем пока pdftk установится

2) Используем pdftk через Terminal.
Заходим в папку с нашими pdf. К сажелению тут необходимы базовые знания о консоли в unix, чтобы можно была зайти в нужную папку.
Можно для простаты использовать оболочку: mc (предварительно установив ее sudo port install mc).
Ну а можно написать "cd " (с пробелом), пертащить в окошко терминала папку с pdf файлами, отпустить и нажать Enter. Получится что-то вроде

$ cd /Users/v01d/Documents/Folder

где cd - команда перехода в папку, а /Users/v01d/Documents/Folder - путь.

Ну и наконец мы можем "склеивать" файлы:
2.1) Следующей командой можно объединить два (и более) файла в третий.

$ pdftk in1.pdf in2.pdf cat output outfile.pdf

2.2) При большом количестве файлов удобно пользоваться маской(для текущей папки):

$ pdftk *.pdf cat output outfile.pdf

outfile.pdf - имя конечного файла

У меня сотня с лишнем файлов склеилась за 2-3 секунды.

В результати мы с чистой совестью и незплатив ни копейки имеем результат. Несмотря на кажащуюся сложность консоли, на практике все будет не так сложно.
P.S. Материал взят и одаптирован с
http://wiki.linuxformat.ru/index.php/LXF80:Flash_%D0%B8_PDF

кайф. надо будет запомнить. а то я просто стирал книги разбитые по главам в pdf Ж:-)
--
Signature invent in progress 24% ##........

Рад, что совет может оказаться полезным -)

In lege artis

Отправить комментарий

Google Friend Connect (leave a quick comment)
loading...
Содержание этого поля является приватным и не предназначено к показу.