在Java中,是否有可能检查png图像是否具有透明度?如果png图像不包含透明度,则需要将所有png图像转换为jpg。Java中是否有方法来检查这一点?
在Java中,是否有可能检查png图像是否具有透明度?如果png图像不包含透明度,则需要将所有png图像转换为jpg。Java中是否有方法来检查这一点?
你可以检查图像的颜色模型是否包含 Alpha 通道:
BufferedImage img = ImageIO.read(/* from somewhere */);
if (img.getColorModel().hasAlpha()) {
// img has alpha channel
} else {
// no alpha channel
}
请注意,此代码仅检测已保存带有Alpha通道的图像。带有Alpha通道的图像仍可能完全不透明(即所有像素的Alpha值均为1)。