在每个人都链接Convert all images to jpg之前,我必须说我已经在使用此线程的解决方案了。
我正在将大量静态gif文件转换为jpg。然而,其中一些有透明背景,我得到黑色背景,这是不可接受的。
我试图使用MakeTransparent()
,但我不知道如何使用它,或者它不起作用。
# first try
$image.MakeTransparent("white")
# second try
$col = "#FFFFFF"
$image.MakeTransparent([System.Drawing.ColorTranslator]::FromHtml($col))
两者都在powershell中运行而没有错误但都生成黑色背景。
我还发现了Bitmap.Clear(Color.White)
和Bitmap.SetTransparencyKey(Color.White)
但是当我尝试运行代码时收到错误
方法调用失败,因为[System.Drawing.Bitmap]不包含名为' Clear'。
的方法。
SetTransparenctKey
相同。
是否还有其他简单的功能可以使透明背景变白?
答案 0 :(得分:3)
JPG无法支持透明背景。它使用RGB色彩空间。使用其他格式,如PNG。