Все статьи

PDF в изображения через CLI

Растеризация страниц PDF в PNG через Ghostscript.

Открыть онлайн-конвертер

Какие пакеты установить

Пакет ghostscript и устройство png16m. -r задаёт DPI: 150 для превью, 300 для печати.

ghostscript
apt install
sudo apt-get update
sudo apt-get install -y ghostscript

Как вызвать команду

gs -sDEVICE=png16m -r150 -sOutputFile=page-%02d.png input.pdf. Маска %02d создаёт page-01.png, page-02.png и так далее.

gs
gs -dNOPAUSE -dBATCH -dSAFER -sDEVICE=png16m -r150 -sOutputFile=page-%02d.png input.pdf

Пример Dockerfile

Соберите минимальный образ Ubuntu с нужными пакетами и запускайте конвертацию в контейнере.

Dockerfile
FROM ubuntu:24.04

RUN apt-get update && \
    apt-get install -y --no-install-recommends \
        ghostscript && \
    rm -rf /var/lib/apt/lists/*

WORKDIR /work
docker build && docker run
docker build -t pdf-to-images .
docker run --rm -v "$PWD:/work" -w /work pdf-to-images \
  gs -dNOPAUSE -dBATCH -dSAFER -sDEVICE=png16m -r150 -sOutputFile=page-%02d.png input.pdf

Примеры команд

Команды ниже можно запускать локально после установки пакетов или внутри контейнера из Dockerfile.

Пример 1
gs -dNOPAUSE -dBATCH -dSAFER -sDEVICE=png16m -r150 -sOutputFile=page-%02d.png input.pdf
Пример 2
gs -dNOPAUSE -dBATCH -dSAFER -sDEVICE=png16m -r300 -sOutputFile=page-%03d.png input.pdf