4

我正在使用 ghostscript 将 eps(封装的 PostScript)文件转换为 jpeg 文件。我使用的示例命令是:

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

输入的 eps 文件带有白色背景(我只有它们的剪切路径)。我需要做的是在输出图像中将此白色背景更改为另一种颜色,或者如果我可以使它们透明(输出文件格式为 png)会更好。我怎样才能做到这一点?

4

2 回答 2

1

我自己从未尝试过,但您应该能够通过设置将您的 eps 文件转换为 png:

-sDEVICE=pngalpha

pngalpha 设备也有一个 -dBackgroundColor 选项:

-dBackgroundColor=16#RRGGBB (RGB 颜色,默认白色 = 16#ffffff) 仅适用于 pngalpha 设备,在 PNG bKGD 块中设置建议的背景颜色。当读取 PNG 文件的程序不支持 alpha 透明度时,PNG 库将使用程序提供的背景颜色或 bKGD 块转换图像。一种常见的 Web 浏览器存在此问题,因此在网页上使用时,您需要在创建用于页面的 alpha 透明 PNG 图像时使用 -dBackgroundColor=16#CCCC00。

更多细节在这里:Ghostscript 输出设备的细节见第 3.1 节。PNG文件格式

于 2010-01-12T05:13:12.890 回答
0

从 Ghostscript 获得(白色背景)图像后,您可以使用 ImageMagickconvert或 GraphicMagick 的gm convert命令将白色更改为透明背景:

convert -background transparent my.png my_transp.png

于 2010-07-31T22:55:15.580 回答