Как создать PDF из картинок

Метки: ,

Пара вступительных слов

Итак, у вас есть целая папка картинок и вы все эти картинки хотите перевести в pdf-файл. Перед этим их не мешало бы предварительно обработать. Нужно постараться уменьшить размеры файлов, не теряя при этом качества изображений. Если же вы уверенны в том, что ваши изображения готовы к конвертации в pdf (к примеру, вы их подготовили вручную в одном из графических редакторов) и просто ищете программу для перевода картинок в pdf, то переходите сразу к чтению второй части этой статьи.

Подготовка картинок к преобразованию в PDF 

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

Для начала нужно определится в каком формате нам лучше хранить изображения. Для фотографий, картин и других изображений с большим количеством цветов и с плавными переходами красок целесообразно использовать JPEG. Для диаграмм, чертежей, текста и нот лучше всего подойдёт формат PNG (наш выбор).

Также мы видим что все файлы в папке однотипные и что всю полезную информацию в них можно было бы передать всего двумя цветами — чёрным и белым. Поэтому, нужно использовать индексированную палитру из двух цветов и глубину цвета в один бит (одного бита как раз хватит для «раскрашивания» пиксела одним из двух вариантов цветов).

Если у вас немного файлов, то вышеуказанные изменения можно сделать вручную в каком-нибудь графическом редакторе. К примеру, в GIMP нужно вызвать меню «Изображение -> Режим -> Индексированное» и, для нашего примера, поставить переключатель в разделе «Цветовая карта» в положение «Использовать чёрно-белую (1 разряд) палитру»:Диалог индексированного изображения в GIMP

А потом сохранить рисунок как PNG:Диалог Сохранить Как в GIMP

Но обычно файлов много и тут не обойтись без удобных утилит с интерфейсом командной строки, например, ImageMagick. Чтоб скачать версию этого пакета утилит для Windows перейдите на одно из зеркал перечисленных на странице загрузок (http://imagemagick.com/script/download.php), уже в файловом архиве зеркала перейдите в папку «binaries» и скачайте оттуда файл вида «ImageMagick-x.y.z-Q16-windows-dll.exe».

После установки ImageMagick запускаем командную строку («Пуск -> Выполнить», пишем «cmd», жмём «Ok») и переходим в папку с изображениями:

cd "Путь к / папке с / изображениями"

Если командный интерпретатор открылся, к примеру, в папке на диске C, а ваши картинки лежат на диске D, то перед предыдущей командой нужно сменить диск на D.

d:

Начинаем экспериментировать с одним из файлов:

convert 01.jpg -depth 1 -colors 2 test.png

Если качество файла test.png не устраивает — играемся с параметрами «depth» и «colors»:

convert 01.jpg -depth 4 -colors 8 test.png

Когда волшебная команда найдена, создаём папку в которую будем складывать сконвертированные картинки (пусть это будет «D:/book») и запускаем эту команду в цикле по всем JPG-файлам в текущей папке:

for %f in (*.jpg) do convert %f -depth 1 -colors 2 d:/book/%~nf.png

С помощью вышеуказанной команды получаем пять PNG-файлов в папке «D:/book» общим объёмом 128 КБ против 5,65 МБ оригинальных файлов.

Конвертирование изображений в PDF 

Было бы логично использовать набор программ для работы с изображениями ImageMagick для преобразования картинок в PDF-файл, поскольку мы обращались к этим утилитам в прошлой главе:

convert *.png book.pdf

Но, к сожалению, такой «прямой» способ работает плохо — на Windows конвертирование десятка картинок может продолжаться 5-7 минут, а в FreeBSD очень быстро переполняется файл подкачки:

swap_pager: out of swap space
swap_pager_getswapspace(16): failed

Решение под Windows есть немного ниже, а для юниксоидов может помочь конвертация каждого изображение в PDF и последующее склеивание этих PDF-файлов вместе с помощью утилиты pdftk:

perl -e'while(glob "*.png"){`convert $_ $_.pdf`}'
pdftk *.pdf cat output book.pdf

Для Windows, одним из хороших способов конвертации изображений в PDF является использование бесплатного набора утилит PDFill Tools, который доступен для скачивания здесь: http://www.pdfill.com/download.html

Открыв программу PDFill ToolsPDFill icon жмём на кнопку «Convert images to PDF»:Окно PDF Tools с кнопокой Convert Images To PDF

Откроется окно в котором нужно, с помощью файлового менеджера, открывающегося по кнопке «Add an image», выбрать картинки, которые и составят страницы будущего PDF-файла.Окно программы для преобразования картинок в PDF из набора PDFill Tools

Позволю себе вам напомнить, что выбирать несколько файлов в файловом менеджере Windows удобно с помощью «Ctr + щелчок мыши» либо «Ctr + a» (последнее необходимо для выбора всех файлов сразу).

После этого, нажав на кнопку «Save As...» и указав место для сохранения вашего полученного из картинок PDF-файла, такой файл будет сгенерирован и сразу же открыт для просмотра в Acrobat Reader.

Справедливости ради, стоит отметить что утилита pdftk, упомянутая в решении для юниксойдов, доступна и для Windows (http://www.pdflabs.com/docs/install-pdftk), но PDFill Tools работает лучше — из наших png-картинок общим объемом 128 КБ она сделала файл размером 133 КБ, тогда как pdftk из тех же изображений создала файл 224 КБ.


27 Сентябрь 2011

Комментарии (заморожены на какое-то время)

  • Спасибо за статью, помогло! Создаются реально маленькие ПДФ, особенно в PDFill Tools

    Автор LM, 06/03/2017 12:45pm (3 лет назад)

  • Огромное спасибо очень помогло в работе. Работаю мебельщиком и изображения в формате pdf необходимы для создания рельефных изделий. Еще раз огромное спасибо)))!!!

    Автор денис , 28/02/2015 8:57pm (5 лет назад)

  • Спасибо) Всё получилось!

    Автор Екатерина, 27/10/2013 2:55pm (6 лет назад)

  • Большое спасибо за информацыю!Выручил

    Автор Сашка, 16/09/2013 6:02pm (7 лет назад)

  • @Olga: размер pdf-файла, в нашем случае, напрямую зависит от размера составляющих его картинок, поэтому, если это возможно, уменьшайте размер изображений, попробуйте уменьшить количество цветов или создать индексированное изображение. Сделать это можно, практически, в любом растровом редакторе (Photoshop, Gimp). Из этой статьи, из части «Подготовка картинок к преобразованию в PDF», можно почерпнуть кое-каких знаний по этому поводу.

    Автор Artyom Bisyarin, 29/05/2012 2:52pm (8 лет назад)

  • огромное спасибо, разные варианты пробовала, это самый хороший. Только у меня вопрос будет, не подскажете как уменьшить вес PDF файла.

    Автор olga, 28/05/2012 9:19pm (8 лет назад)

  • Огромное спасибо!
    мне тоже помогли Ваши советы.

    Автор николай, 07/03/2012 9:59pm (8 лет назад)

  • @Александр: это утилита из папки "C:\Windows\System32", тоже имеющая имя "convert.exe", пишет "Недопустимый параметр: -depth". Убедитесь, что установщик ImageMagick прописал в начало переменной Path свой путь и, если прописал, то убедитесь, что вы не пытаетесь запустить "convert.exe" из запущенной до установки ImageMagick командной строки (или FAR-а, к примеру).

    Ну, или просто, запускайте "convert.exe" напрямую: "C:\Program Files\ImageMagick-6.7.2-Q16\convert.exe" (путь к утилите у вас может быть свой).

    Автор Artyom Bisyarin, 01/02/2012 6:16pm (8 лет назад)

  • У меня не работает ИмажеМагик. Пишет "Недопустимый параметр: -depth"

    Автор Александр, 01/02/2012 4:41pm (8 лет назад)

  • Спасибо, ваш метод очень помог. Пакет PDFill Tools весьма полезная находка, долго искал нечто подобное среди бесплатных программ.

    Автор Creator, 15/01/2012 2:37pm (8 лет назад)


Интернет реклама