Часто вам может потребоваться преобразовать или добавить изображения в файлы PDF, особенно если у вас есть приложение, и вы хотите, чтобы пользователи загружали изображения в виде файлов PDF.
Существуют различные онлайн-инструменты, которые конвертируют изображения в PDF. Но безопасность всегда вызывает беспокойство, и вы не можете доверять этим онлайн-сайтам свои данные. Лучший способ — конвертировать изображения на вашем компьютере. Linux предлагает различные утилиты командной строки, которые помогут вам в этом. Двумя распространенными инструментами являются Img2PDF и ImageMagick.
ImageMagick отличается высокой скоростью преобразования изображений в PDF. Инструмент Linux с открытым исходным кодом использует несколько потоков ЦП, чтобы ускорить процесс преобразования. Независимо от того, конвертируете ли вы одно или несколько изображений, ImageMagick выполняет свою работу.
Давайте сначала установим ImageMagick, используя следующую команду:
$ sudo apt update $ sudo apt install -y imagemagick
Для пользователей Fedora команда выглядит следующим образом:
$ sudo dnf install imagemagick
С уже установленным ImageMagick перейдите в каталог, содержащий ваши изображения. У нас разные изображения в нашем примере. Мы увидим, как мы можем преобразовать их по одному и как преобразовать их все сразу.
Синтаксис преобразования следующий:
$ convert image demo.pdf
Обратите внимание, что мы используем convert, утилиту для ImageMagick. Начнем с преобразования одного изображения.
Если вы запустите предыдущую команду convert, она должна работать нормально. Однако вы можете получить сообщение об ошибке.
В этом случае все, что вам нужно, это отредактировать файл policy.xml с помощью редактора, такого как nano.
$ sudo nano /etc/ImageMagick-6/policy.xml
Найдите строку в следующем примере:
<policy domain="coder" rights="none" pattern="PDF" />
Чтобы исправить ошибку, замените права с “none” на “read|write”.
Сохраните файл и повторите команду. Теперь у вас будет файл PDF с преобразованным изображением.
Чтобы преобразовать все изображения в текущем каталоге в формат PDF, вы можете добавить их имена по одному или выбрать формат изображения, если они совпадают. В нашем случае форматы изображений — «.jpg». В этом случае наша команда выглядит следующим образом:
$ convert *.jpg all.pdf
Вот и все! Теперь у вас есть все ваши изображения, преобразованные в один PDF-файл.
ImageMagick — отличный инструмент для преобразования изображений в PDF из командной строки. Единственная плохая сторона этого заключается в том, что разрешение изображений меняется, а файл PDF не имеет полного разрешения, что снижает качество изображения.
ImageMagick преобразует изображения в PDF, но качество изображений снижается. Альтернативой является использование Img2PDF для преобразования тех же фотографий без потери качества изображения. Кроме того, Img2PDF позволяет указывать размер изображения при конвертации.
Начните с установки Img2PDF с помощью следующей команды:
$ sudo apt install img2pdf
Вы можете проверить установку, проверив версию.
Img2PDF также можно установить с помощью pip в других дистрибутивах:
$ pip install img2pdf
Установив инструмент, давайте приступим к конвертации наших изображений. Мы используем те же изображения, что и с ImageMagick. Сначала перейдите в каталог, содержащий ваши изображения. Чтобы преобразовать один файл, используйте следующий синтаксис:
$ img2pdf img -o convert.pdf
Теперь у нас есть PDF-версия изображения. Если вы хотите конвертировать несколько изображений, вы можете перечислить их все. Или, если они имеют одинаковый формат, используйте сокращение *.
Чтобы указать размер страницы или размер изображения для вывода, используйте параметр –imgsize или –pagesize.
Например, чтобы задать размер изображения 30 см на 45 см, выполните следующую команду:
$ img2pdf <image> --imgsize 30cmx45cm -o output.pdf
Преобразование изображений разных форматов в PDF не должно вас беспокоить при использовании Linux. В вашем распоряжении есть утилиты командной строки и простой синтаксис. В этой статье представлены две утилиты, Img2PDF и ImageMagick, которые можно использовать для преобразования одного или нескольких изображений в формат PDF.