Ну, во-первых, вы на самом деле не сказали, что не так с двумя командами, которые вы уже пробовали .....
Ваша программа PostScript, вероятно, не содержит «изображения» как такового, PostScript не является растровым форматом, а является языком программирования.
Вы можете использовать Ghostscript для рендеринга PostScript в изображение, а затем использовать ImageMagick для изменения размера этого изображения, возможно, вы можете объединить эти два шага или просто выполнить одно преобразование, это зависит от того, что именно вы хотите, чтобы не ясно.
Если (например) ваша программа PostScript запрашивает носитель размером 9 дюймов на 8, вы можете создать растровое изображение, просто установив разрешение 100 dpi с помощью -r100
.
Если вы хотите, чтобы изображение масштабировалось по-разному в каждом направлении, вам нужно установить неквадратное разрешение. Например, если программа PostScript запрашивает носитель размером 9 дюймов на 4, вам нужно установить разрешение 100x200, чтобы получить изображение размером точно 900 x 800 пикселей. Для этого вы бы использовали -r100x200
.
Альтернатива, с точки зрения PostScript, состоит в том, чтобы установить размер носителя для данного
значение в пикселях (используя -g900x800
) и значение -dDFIXEDMEDIA
, которое не позволяет программе PostScript изменить его. Затем вы можете использовать -dFitPage
, что позволит Ghostscript масштабировать содержимое по размеру страницы. Однако он будет масштабировать содержимое одинаково в обоих направлениях, что может оставить пустое пространство по краю.
Теперь, поскольку Ghostscritp не пишет GIF напрямую, вам нужно загрузить любой выбранный вами формат растрового изображения в IM, чтобы записать его как GIF, поэтому, возможно, самое простое решение - просто использовать Ghostscript для визуализации PostScript в определенное разрешение (например, 100 точек на дюйм), а затем загрузите это изображение в IM и измените его масштаб там.
Поскольку IM (и, следовательно, конвертирует) использует Ghostscript для обработки программ PostScript, это то, что происходит сейчас, поэтому для меня не очевидно, в чем ваша проблема.