Как преобразовать PDF для Обработки изображений?

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

Действительно ли там какое-либо программное обеспечение доступно для того же так, чтобы полная страница могла быть преобразована в изображение?

337
задан 23 June 2011 в 03:36

11 ответов

  1. Установка imagemagick.

  2. Используя терминал, где PDF расположен:

    • Для полного документа:

      convert -density 150 input.pdf -quality 90 output.png
      
    • Для единственной страницы:

      convert -density 150 input.pdf[666] -quality 90 output.png
      

Посредством чего:

  • PNG, JPG или (фактически) любой другой формат изображения может быть выбран.

  • -density xxx установит DPI на xxx (распространенный 150 и 300).

  • -quality xxx установит сжатие на xxx для PNG, JPG и форматов файла РАЗМОЛВКИ (100 средств никакое сжатие).

  • [666] преобразует только 667-ю страницу в PNG (основанная на нуле нумерация так [0] 1-я страница).

  • Все другие опции (такие как обрезка, шкала полутонов, и т.д.) могут быть просмотрены на веб-сайте Волшебства Изображения.

303
ответ дан 22 November 2019 в 22:35

Можно использовать pdftoppm преобразовать PDF в PNG:

pdftoppm input.pdf outputname -png

Это произведет каждую страницу в PDF с помощью формата outputname-01.png, с 01 будучи индексом страницы.

Преобразование единственной страницы PDF

pdftoppm input.pdf outputname -png -f {page} -singlefile

Изменение {page} к номеру страницы. Это индексируется в 1, таким образом, -f 1 была бы первая страница.

Определение разрешения преобразованного изображения

Разрешением по умолчанию для этой команды являются 150 DPI. Увеличение его приведет и к большему размеру файла и к большему количеству детали.

Для увеличения разрешения преобразованного PDF добавьте опции -rx {resolution} и -ry {resolution}. Например:

pdftoppm input.pdf outputname -png -rx 300 -ry 300
409
ответ дан 22 November 2019 в 22:35

IIRC GIMP способен к использованию PDFs, т.е. преобразованию их в изображения. Таким образом, если Вы хотите отредактировать изображения сразу же - GIMP является Вашим другом.

24
ответ дан 22 November 2019 в 22:35

Можно использовать, преобразовывают и указывают более высокое использование плотности -density опция.

например. convert -d 300 foo.pdf bar.png

2
ответ дан 22 November 2019 в 22:35

Если Вы только хотите преобразовать определенную страницу PDF к PNG, можно передать по каналу pdftk кому: convert (описанный выше) как это:

pdftk document.pdf cat 12 output - | convert - document-page-12.png
2
ответ дан 22 November 2019 в 22:35

У основного Редактора PDF (ver 2.2) есть эта опция buit в. Откройте файл PDF и затем перейдите к Файлу> Экспорт в> Изображения. Это представляет диалоговое окно, где можно определить различные варианты для вывода. Чрезвычайно полезный. Надеюсь, что эта информация помогает.

1
ответ дан 22 November 2019 в 22:35

Если Ваши pdfs сканируются, изображения уже хранятся как часть PDF. необходимо будет просто извлечь их с pdfimages:

pdfimages my-file.pdf prefix 
8
ответ дан 22 November 2019 в 22:35

Для получения единственной страницы от gm преобразовывают добавляют [N] (с N номер страницы, запускающийся в 0) к имени PDF, т.е. gm convert foo.pdf[11] out.png получить 12-ю страницу от PDF.

Для pdftoppm использовать -f N -singlefile, где N является номером страницы, запускающимся в 1, т.е. pdftoppm -f 12 -singlefile foo.pdf out для того же результата. Это, кажется, всегда добавляет ".png" к выходному имени файла и нет никакого способа остановить это.

3
ответ дан 22 November 2019 в 22:35

В настоящее время принимаемый ответ делает задание, но приводит к выводу, который больше в размере и страдает от качественной потери.

Метод в ответе, данном здесь, приводит к выводу, который сопоставим в размере с входом и не страдает от качественной потери.

TLDR - Использовать pdfimages : pdfimages -j input.pdf output

Заключение в кавычки связанного ответа:

Не ясно, что Вы подразумеваете "под качественной потерей". Это могло означать много разных вещей. Вы могли отправить некоторые образцы для иллюстрирования? Возможно, сократите тот же раздел из версий низкого качества и хорошего качества (как PNG для предотвращения дальнейшей качественной потери).

Возможно, необходимо использовать -density сделать преобразование на уровне более высоких точек на дюйм:

convert -density 300 file.pdf page_%04d.jpg

(Можно предварительно ожидать -units PixelsPerInch или -units PixelsPerCentimeter при необходимости. Мои значения по умолчанию копии к пкс/дюйм)

Обновление: Поскольку Вы указали, gscan2pdf (способ, которым Вы используете его) просто обертка для pdfimages (от poppler). pdfimages не делает того же самого это convert делает при предоставлении PDF как вход.

convert берет PDF, представляет его в некотором разрешении и использует полученное растровое изображение в качестве исходного изображения.

pdfimages просматривает PDF для встроенных растровых изображений и экспортирует каждого в файл. Это просто игнорирует любой текст или векторные команды рисования в PDF.

В результате, если то, что Вы имеете, является PDF, это - просто обертка вокруг серии битовых массивов, pdfimages сделает намного лучшее задание извлечения их, потому что это получает Вас необработанные данные в его первоначальном размере. Вы, вероятно, также хотите использовать -j опция к pdfimages, потому что PDF может содержать необработанные данные JPEG. По умолчанию, pdfimages преобразовывает все в формат PNM и преобразование JPEG> PPM>, JPEG является процессом с потерями.

Так, попробуйте

pdfimages -j file.pdf page

Вы можете или, возможно, не должны следовать за этим с a convert кому: .jpg шаг (в зависимости от того, что растровый формат PDF использовал).

Я попробовал эту команду на PDF, который я сделал сам из последовательности изображений JPEG. Извлеченные JPEGs были байтом для байта, идентичным исходным изображениям. Вы не можете получить более высокое качество, чем это.

13
ответ дан 22 November 2019 в 22:35

Модификация PDF также позволяет экспортировать изображения всех или отдельных страниц файлов PDF.

  • Откройте файл PDF в Модификации PDF
  • Выберите страницу (страницы) -
  • Редактирование> изображение (изображения) Экспорта
0
ответ дан 22 November 2019 в 22:35

Вы можете сделать это с помощью ghostscript:

gs -dSAFER -dBATCH -dNOPAUSE -r300 -sDEVICE=png16m -dFirstPage=1 -dLastPage=1 -dTextAlphaBits=4 -dGraphicsAlphaBits=4 -sOutputFile=output.png input.pdf

См. https ://www.ghostscript.com/doc/9.52/Devices.htm для подробностей

2
ответ дан 21 May 2020 в 18:38

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

Похожие вопросы: