Créer un BufferedImage à partir d'un fichier et de le rendre TYPE_INT_ARGB
J'ai un fichier PNG avec de la transparence qui sont chargées et stockées dans un BufferedImage
. J'ai besoin de cette BufferedImage
de TYPE_INT_ARGB
. Cependant, lorsque j'utilise getType()
la valeur retournée est 0 (TYPE_CUSTOM
) au lieu de 2 (TYPE_INT_ARGB
).
C'est comment je charge le .png
:
public File img = new File("imagen.png");
public BufferedImage buffImg =
new BufferedImage(240, 240, BufferedImage.TYPE_INT_ARGB);
try {
buffImg = ImageIO.read(img );
}
catch (IOException e) { }
System.out.Println(buffImg.getType()); //Prints 0 instead of 2
Comment puis-je charger le .png, sauf dans le BufferedImage
et de le rendre TYPE_INT_ARGB
?
- Changement
public BufferedImage buffImg = new BufferedImage(240, 240, BufferedImage.TYPE_INT_ARGB);
àpublic BufferedImage buffImg;
&catch (IOException e) { }
àcatch (IOException e) { e.printStackTrace(); }
. Rapport de la nouvelle sortie. System.Out.Println
ce ne serait pas compiler. Pour mieux aider plus tôt, après une SSCCE.
Vous devez vous connecter pour publier un commentaire.
Exemple de sortie de mon fichier image:
Vous pouvez exécuter le Système.out.println(objet); sur à peu près n'importe quel objet et d'obtenir quelques informations à ce sujet.
Créer un BufferedImage à partir d'un fichier et de le rendre TYPE_INT_RGB
Cette brosse une grande série bleue sur le dessus.
Si vous le souhaitez ARGB, faites comme ceci:
Ouvrir MyFile.png, il a un trait rouge sur le dessus.