puis-je obtenir l'image originale de BufferedImage?
Question
i a une instance de BufferedImage: (seulement un exemple)
BufferedImage image = ImageIO.read(new URL("http://www.google.com/intl/en_ALL/images/srpr/logo1w.png"));
maintenant, je ne sais utiliser
ImageIO.write(image,"jpg", file); //or ImageIO.write(image,"png", file);
pour enregistrer cette BufferedImage dans un fichier, mais ce fichier est zipée, pas égale à la taille de l'image originale.
puis-je obtenir l'image originale ByteArray ou OutputStream d'exemple BufferedImage?
La solution
En bref:. Pas
Java convertit les images à une représentation interne et convertit les fichiers à la lecture et l'écriture.
Votre meilleur pari sera de lire les fichiers dans un tableau d'octets (ou dans un fichier temporaire), créer l'image à partir de là. et lors de l'enregistrement du fichier, revenir à la bytearray d'origine ou tempfile.
Autres conseils
public static Image toImage(BufferedImage bufferedImage) {
return Toolkit.getDefaultToolkit().createImage(bufferedImage.getSource());
}
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow