Ghostscript PDF to PNG: вывод всегда 595x842 (A4)
Я пытаюсь конвертировать PDF в PNG, но выходное изображение всегда A4, однако исходный PDF очень огромен. Вот мои команды:
-dNOPAUSE ^
-dBATCH ^
-dSAFER ^
-sDEVICE=png16m ^
-dFirstPage=1 ^
-sOutputFile="D:PDF.png" ^
"D:PDF.pdf" ^
-sPAPERSIZE=a1
Я попробовал несколько вариантов (- r, -g, - sDEFAULTPAPERSIZE), но ни один не сработал.
Как я могу заставить выходные размеры изображения?
P. S: Мой PDF-файл
1 ответ:
Ваш связанный с PDF файл имеет только 1 страницу. Это означает, что ваш параметр командной строки
-dFirstPage=1
не имеет никакого влияния.Кроме того, ваш параметр
-sPAPERSIZE=a1
не должен быть последним (здесь он не имеет никакого влияния-поэтому Ghostscript принимает размер по умолчанию из размера страницы входного PDF, который равен A4). Вместо этого он должен появиться где-то перед"D:\PDF.pdf"
(который должен быть последним).Похоже, что вы хотите PNG размером A1, а ваша ОС-Windows (догадка из частичного командная строка вам предоставлена)?
Попробуйте вместо этого (он добавляет
-dPDFFitPage=true
в командную строку и помещает аргументы в правильном порядке, а также сокращает его немного, используя трюк-o
):gswin32c.exe ^ -o "D:\PDF.png ^ -sDEVICE=png16m ^ -sPAPERSIZE=a1 ^ -dPDFFitPage=true ^ "D:\PDF.pdf"
Это должно дать вам PNG размером 1684x2384 пикселя на 72dpi (который является встроенным по умолчанию для всех выходных изображений Ghostscript, используемых, если не указано другое разрешение). Для различных комбинаций разрешения и размера страницы добавьте свой вариант
-rXXX
и-gNNNxMMM
(вместо-sPAPERSIZE=a1
) но непременно сохраняйте свое-dPDFFitPage=true
....Можно также сохранить
-sPAPERSIZE=a1
и добавить-r100
или-r36
или-r200
, Если требуется только другое разрешение. Имейте в виду, что увеличение разрешения не может улучшить качество изображения по сравнению с выходом по умолчанию 72dpi. Это зависит от разрешения изображений, которые были встроены в страницу PDF. Но это, безусловно, увеличивает размер файла...