Convertir une Image en BufferedImage en Java
Dans ce tutoriel, nous allons voir la méthode la plus simple pour convertir le type image en BufferedImage. Le cast (BufferedImage) image; ne marche pas, mais il est possible de créer un nouveau objet BufferedImage avec les paramètres:- Longueur: img.getWidth()
- Hauteur: image.getHeight()
- Pixels et couleurs: BufferedImage.TYPE_INT_ARGB.
La conversion est très simple puisque la classe BufferedImage hérite de la super classe Image.
public static BufferedImage toBufferedImage(Image img)TYPE_INT_ARGB représente une image avec 8 bits de type RGB (RVB) et supporte le paramètre alpha de rendu et de transparence de la classe alphaComposite.
{
//si l'image est de type BufferedImage
//alors on fait seulement le cast
//parce que l'image passée est de type BufferedImage
if (img instanceof BufferedImage)
{
return (BufferedImage) img;
}
// Créer une BufferedImage
BufferedImage bufimage = new BufferedImage(img.getWidth(null),
img.getHeight(null), BufferedImage.TYPE_INT_ARGB);
return bufimage;
}
Références:
http://stackoverflow.com/questions/221830/set-bufferedimage-alpha-mask-in-java