java的检查图像是否包含透明度(Java check if an image has transp

2019-06-23 18:46发布

是否有可能以检查是否PNG图像具有透明度的Java? 我需要所有的PNG图像转换为JPG格式,如果png图片不包含透明度。 有没有方法在Java中检查呢?

Answer 1:

您可以检查图像的颜色模型包括一个Alpha通道:

BufferedImage img = ImageIO.read(/* from somewhere */);

if (img.getColorModel().hasAlpha()) {
    // img has alpha channel
} else {
    // no alpha channel
}

请注意,此代码仅检测到已保存的alpha通道图像。 用α通道的图像可能仍然是完全不透明的(即,阿尔法= 1对于所有像素)。



文章来源: Java check if an image has transparency