Как конвертировать PDF в JPG с помощью командной строки в Linux?

Каковы быстрые и надежные способы преобразования PDF в (одиночный) JPEG с помощью командной строки linux?

2 ответа

На протяжении последних 5 лет я не могу заставить imagemagick работать постоянно (если вообще) для меня, и я не знаю, почему люди постоянно рекомендуют его снова и снова. Я просто погуглил, как преобразовать PDF в JPEG сегодня, нашел этот ответ и попробовалconvert, и у меня это совсем не работает:

$ convert in.pdf out.jpg
convert-im6.q16: not authorized `in.pdf' @ error/constitute.c/ReadImage/412.
convert-im6.q16: no images defined `out.jpg' @ error/convert.c/ConvertImageCommand/3258.

Затем я вспомнил, что есть еще один инструмент, который я использую и о котором писал, поэтому я погуглил " linux convert pdf to jpg Gabriel Staples", щелкнул первое нажатие и прокрутил вниз до своего ответа. Вот что мне идеально подходит:

  1. [Производит файлы размером ~1 МБ на страницу] Вывод в формате .jpg с разрешением 300 точек на дюйм:

    mkdir -p images && pdftoppm -jpeg -r 300 mypdf.pdf images/pg
    
  2. [Производит файлы размером ~2 МБ на страницу] Вывод в формате .jpg с максимальным качеством (наименьшее сжатие) и все еще с разрешением 300 точек на дюйм:

    mkdir -p images && pdftoppm -jpeg -jpegopt quality=100 -r 300 mypdf.pdf images/pg
    
  3. Если вам нужно большее разрешение, вы можете попробовать 600 DPI:

    mkdir -p images && pdftoppm -jpeg -r 600 mypdf.pdf images/pg
    
  4. ... или 1200 точек на дюйм:

    mkdir -p images && pdftoppm -jpeg -r 1200 mypdf.pdf images/pg
    

См. Ссылки ниже для получения дополнительных сведений и опций.

Ссылки:

  1. Конвертируйте PDF в изображение с высоким разрешением
  2. https://askubuntu.com/questions/150100/extracting-embedded-images-from-a-pdf/1187844

Ты можешь попробовать imagemagick хранилище, а затем convert полезность:

$ sudo apt-get install imagemagick
$ convert input.pdf output.jpg

И наоборот, другой синтаксис зависит от дистрибутива Linux.

libvips может быстро конвертировать PDF -> JPEG. Он входит в состав большинства дистрибутивов Linux, для macos - доморощенный, а бинарный файл Windows можно загрузить с сайта libvips.

Это преобразует PDF в JPG с разрешением по умолчанию (72):

vips copy somefile.pdf somefile.jpg

Вы можете использовать параметр dpi, чтобы установить другое разрешение рендеринга, например:

vips copy somefile.pdf[dpi=600] somefile.jpg

Вы можете выбрать такие страницы:

vips copy somefile.pdf[dpi=600,page=12] somefile.jpg

С этим эталонным изображением я вижу:

$ /usr/bin/time -f %e vips copy r8.pdf[page=3,dpi=300] x.jpg
0.77

А с ImageMagick это:

$ /usr/bin/time -f %e convert -density 300 r8.pdf[3] x.jpg
3.04

Таким образом, libvips примерно в 4 раза быстрее (в этом тесте).

Конвертировать из imagemagick Кажется, сделать хорошую работу

convert file.pdf test.jpg

и в случае, если было создано несколько файлов:

convert test-0.jpg --append test-1.jpg ... --append one.jpg

создать один файл, где все страницы объединены.

Другие вопросы по тегам