在 Java 中将图像转换为 BufferedImage

在本教程中,我们将看到将图像类型转换为 BufferedImage 的最简单方法。演员阵容BufferedImage image; 不起作用,但可以使用参数创建一个新的 BufferedImage 对象:
  • Length: img.getWidth()
  • Height: image.getHeight()
  • 像素和颜色: BufferedImage.TYPE_INT_ARGB.
转换非常简单,因为BufferedImage 继承自 super Image class.

public static BufferedImage toBufferedImage(Image img)
{
//如果图像的类型是 BufferedImage
//那么我们只 cast
//因为传递的图像是 BufferedImage 类型
if (img instanceof BufferedImage)
{
return (BufferedImage) img;
}

// 创建一个 BufferedImage
BufferedImage bufimage = new BufferedImage(img.getWidth(null),
img.getHeight(null), BufferedImage.TYPE_INT_ARGB);

返回 bufimage;
}
TYPE_INT_ARGB 表示 8 位 RGB (RGB) 类型的图像 并支持 alpha 渲染和透明度参数 类 alphaComposite.

参考:
http://stackoverflow.com/questions/221830/set-bufferedimage-alpha-mask-in-java