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

最佳答案

我假设您要另存为Windows位图(BMP)文件。

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

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

关于java - 从ARGB位图加载BufferedImage,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/9570812/

10-15 03:24