Преобразование Image в BufferedImage в Java
В этом руководстве мы увидим самый простой способ преобразования типа изображения в BufferedImage. В ролях (BufferedImage) image; не работает, но можно создать новый объект BufferedImage с параметрами:- Length: img.getWidth()
- Height: image.getHeight()
- Пиксели и цвета: BufferedImage.TYPE_INT_ARGB.
Преобразование очень простое, так как BufferedImage наследуется от супер Image class.
public static BufferedImage toBufferedImage(Image img)TYPE_INT_ARGB представляет собой изображение с 8-битным типом RGB (RGB) и поддерживает альфа-рендеринг и параметр прозрачности класса alphaComposite.
{
//если изображение имеет тип BufferedImage
//то мы только приведем
//потому что переданное изображение имеет тип BufferedImage
if (img instanceof BufferedImage)
{
return (BufferedImage) img;
}
// Создаем BufferedImage
BufferedImage bufimage = new BufferedImage(img.getWidth(null),
img.getHeight(null), BufferedImage.TYPE_INT_ARGB);
return bufimage;
}
References:
http://stackoverflow.com/questions/221830/set-bufferedimage-alpha-mask-in-java