【发布时间】:2012-01-13 15:23:28
【问题描述】:
我正在将具有透明度的图像转换为不具有透明度的色彩空间。我想为透明区域设置背景颜色。现在,当我转换它时,任何透明区域在最终图像中都会变成黑色。当我在 ColorSpaces 之间转换时,有没有办法做到这一点?这是我用来在颜色空间之间转换的代码:
public BufferedImage convertColorspace( BufferedImage source, int newType) {
BufferedImage destination = new BufferedImage( source.getWidth(), source.getHeight(), newType);
ColorConvertOp colorConvertOp = new ColorConvertOp(null);
colorConvertOp.filter(source, destination);
return destination;
}
// here is how its used
BufferedImage converted = convertColorspace(combinedImage, BufferedImage.TYPE_3BYTE_BGR);
我正在从 BufferedImage.TYPE_4BYTE_ARGB 转换为 BufferedImage.TYPE_3BYTE_BGR。
【问题讨论】:
标签: java colors java-2d color-space