Для преобразования изображений в формате pdf/eps в пикселях мы используем ImageMagick. При преобразовании PDF команда может выглядеть следующим образом:Как ограничить размер растеризации PDF при использовании ImageMagick/Ghostscript
convert -verbose -density 150 -trim -colorspace sRGB input.pdf -quality 90 -flatten -sharpen 0x1.0 output.png
Однако вход PDF (который содержит только несколько путей) имеет заданный размер 300см на 200см, и Ghostscript не нравится, и создает огромный png. Многословный выход ImageMagick показывает это:
"gs" -q -dQUIET -dSAFER -dBATCH -dNOPAUSE -dNOPROMPT -dMaxBitmap=500000000 -dAlignToPixels=0 -dGridFitTT=2 "-sDEVICE=pngalpha" -dTextAlphaBits=4 -dGraphicsAlphaBits=4 "-r150x150" "-sOutputFile=/tmp/magick-3036AW7mUOP25w7J%d" "-f/tmp/magick-3036PxgJinljqMwV" "-f/tmp/magick-30369hcErAROr7V6"
/tmp/magick-3036AW7mUOP25w7J1 PNG 17717x11811 17717x11811+0+0 8-bit sRGB 1.003MB 3.910u 0:03.929
input.pdf PNG 17717x11811 17717x11811+0+0 16-bit sRGB 1.003MB 0.000u 0:00.000
PNG 17717x11811. Огромный. Мне нужно только изображение 256x256.
Я попытался геометрия (-geometry 256x256) варианты и параметр плотности (перед именем файла, -плотностью 150) в различных конфигурациях, но не изменяет выход Ghostscript, например:
convert -verbose -density 150 -trim -geometry 265x265 -colorspace sRGB input.pdf -quality 90 output.png
"gs" -q -dQUIET -dSAFER -dBATCH -dNOPAUSE -dNOPROMPT -dMaxBitmap=500000000 -dAlignToPixels=0 -dGridFitTT=2 "-sDEVICE=pngalpha" -dTextAlphaBits=4 -dGraphicsAlphaBits=4 "-r150x150" "-sOutputFile=/tmp/magick-3233p3ofct0fiy5T%d" "-f/tmp/magick-3233Rads_vSSpKa6" "-f/tmp/magick-3233LQMrrEFgT0fi"
/tmp/magick-3233p3ofct0fiy5T1 PNG 17717x11811 17717x11811+0+0 8-bit sRGB 1.003MB 3.800u 0:03.799
input.pdf PNG 17717x11811 17717x11811+0+0 16-bit sRGB 1.003MB 0.000u 0:00.000
input.pdf=>output.png PNG 17717x11811=>265x38 321x213+28+65 16-bit sRGB 7.96KB 1.080u 0:00.559
Как вы можете определить ограничения для Ghostscript при использовании ImageMagick?
Попробуйте 'convert ... input.pdf ... -resize 256x256 result.png' используя' -resize', а не '-geometry' –