从ARGB位图加载BufferedImage

时间:2012-03-05 17:06:27

标签: java image alpha bufferedimage

我在Gimp中创建了一个32位的ARGB图像。当我使用常用​​方式(BufferedImage img = ImageIO.read(imagePath);)将位图加载到BufferedImage时,图像被加载,但alpha通道只是以黑色显示。当我调试我的应用程序时,我可以看到BufferedImage被分配了TYPE_INT_RGB类型,而不是预期的TYPE_INT_ARGB类型。 如何将我的bmp文件加载到此类型的BufferedImage?

1 个答案:

答案 0 :(得分:2)

我假设您正在保存为Windows位图(BMP)文件。

正如Durandal建议的那样,首先要检查的是,您正在选择支持alpha的BMP格式。在“另存为BMP”对话框的“高级选项”下,确保选择A8 R8 G8 B8格式。

如果这不起作用,请尝试另存为PNG而不是BMP。 BMP文件有许多子格式,Java Imaging API可能不支持所有子格式。