如何在将 eps 文件转换为 jpeg 或 png 时更改其背景颜色
Posted
技术标签:
【中文标题】如何在将 eps 文件转换为 jpeg 或 png 时更改其背景颜色【英文标题】:How to change background color of an eps file while converting it to jpeg or png 【发布时间】:2010-01-07 14:33:49 【问题描述】:我正在使用 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)会更好。我该怎么做?
【问题讨论】:
【参考方案1】:我自己从未尝试过,但您应该可以通过设置将您的 eps 文件转换为 png:
-sDEVICE=pngalpha
pngalpha 设备也有一个 -dBackgroundColor 选项:
-dBackgroundColor=16#RRGGBB(RGB颜色,默认白色=16#ffffff)对于 仅限 pngalpha 设备,设置 PNG中建议的背景颜色 bKGD 块。当一个程序读取一个 PNG 文件不支持 alpha 透明度,PNG 库转换 使用背景的图像 颜色(如果由程序提供)或 bKGD 块。一种常见的网络浏览器 有这个问题,所以在网页上使用时你 需要使用 -dBackgroundColor=16#CCCC00 创建 alpha 透明 PNG 图像时 在页面上使用。
这里有更多详细信息:Details of Ghostscript output devices 请参阅第 3.1 节。 PNG文件格式
【讨论】:
【参考方案2】:从 Ghostscript 获取(白色背景)图像后,您可以使用 ImageMagick 的 convert
或 GraphicMagick 的 gm convert
命令将白色背景更改为透明背景:
convert -background transparent my.png my_transp.png
【讨论】:
以上是关于如何在将 eps 文件转换为 jpeg 或 png 时更改其背景颜色的主要内容,如果未能解决你的问题,请参考以下文章
如何在ghostscript中将svg、eps和ai转换为png
如何使用干预图像laravel将webp图像转换为jpeg或png
GDAL:Python GDAL.Translate可以将TIFF文件转换为JPEG或PNG数组 - 而不是写入文件吗?