Как изменить цвет фона файла eps при преобразовании его в формат JPEG или PNG - PullRequest
4 голосов
/ 07 января 2010

Я конвертирую файлы eps (Encapsulated PostScript) в файлы jpeg с помощью ghostscript. Пример команды, которую я использую:

gswin32.exe -sDEVICE=jpeg -dJPEGQ=100 -dNOPAUSE -dBATCH -dSAFER -r600x600  -dGraphicsAlphaBits=4 -dUseCIEColor  -dEPSCrop -sOutputFile=”a.jpeg” b.eps

Входные eps-файлы поставляются с белым фоном (у меня есть только их путь отсечения). Что мне нужно сделать, это изменить этот белый фон на другой цвет в выходных изображениях, или было бы еще лучше, если бы я мог сделать их прозрачными (формат выходного файла будет png). Как я могу это сделать?

Ответы [ 2 ]

1 голос
/ 12 января 2010

сам никогда не пробовал, но вы сможете конвертировать ваш eps-файл в png, установив:

-sDEVICE=pngalpha

также устройство pngalpha имеет опцию -dBackgroundColor:

-dBackgroundColor = 16 # RRGGBB (цвет RGB, по умолчанию белый = 16 # ffffff) Для только устройство pngalpha, установите Предлагаемый цвет фона в PNG BKGD чанк. Когда программа читает Файл PNG не поддерживает альфа прозрачность, библиотека PNG конвертирует изображение с использованием фона цвет, если поставляется программой или BKGD чанк. Один общий веб-браузер имеет эту проблему, поэтому при использовании на веб-странице вы нужно будет использовать -dBackgroundColor = 16 # CCCC00 при создании альфа-прозрачных изображений PNG для использования на странице.

подробности здесь: Подробности устройств вывода Ghostscript см. Раздел 3.1. Формат файла PNG

0 голосов
/ 01 августа 2010

После того, как вы получили изображения (на белом фоне) из Ghostscript, вы можете использовать команды convert или GraphicMagick gm convert для изменения белого на прозрачный фон:

convert -background transparent my.png my_transp.png

...