Enregistrer le graphics sous forme d'une image png [Résolu]

Signaler
Messages postés
14
Date d'inscription
mercredi 16 mai 2012
Statut
Membre
Dernière intervention
5 juillet 2014
-
cs_Julien39
Messages postés
6413
Date d'inscription
mardi 8 mars 2005
Statut
Modérateur
Dernière intervention
17 mai 2018
-
Salut, je suis débutante et j'ai travaille avec java swing. j'ai crée mon application et maintenant je veux l'enregistrer sous forme d'une image png. En fin, je réussi de faire mais l'image n'est pas clair et le contenu de l'image est illisible. Quelqu'un peut m'aider svp et merci d'avance. a titre de remarque j'ai deja utilisée le scale (graphics.scale(2,2)) mais dans l'image il apparaître juste une partie de la graphics et moi je besoin de tout le grahics dans l'image. voici le code
	BufferedImage((int)xmax,(int)ymax,   BufferedImage.TYPE_INT_RGB);
graphics = bi.createGraphics();
graphics.setColor(getBackground());

canvas.printAll(graphics);
ImageIO.write(bi, "png", new
File("./image.png"));

2 réponses

Messages postés
6413
Date d'inscription
mardi 8 mars 2005
Statut
Modérateur
Dernière intervention
17 mai 2018
271
Salut,

Je te donne la fonction que j'utilise pour réaliser ceci :

 public void enregistrer(Container p, String path) throws IOException {
        BufferedImage tamponSauvegarde = new BufferedImage(
                p.getPreferredSize().width,
                p.getPreferredSize().height,
                BufferedImage.TYPE_3BYTE_BGR);
        Graphics g = tamponSauvegarde.getGraphics();
        g.setColor(Color.WHITE);
        g.fillRect(0, 0, p.getSize().width,
                p.getSize().height);
        p.paint(g);
        ImageIO.write(tamponSauvegarde, "PNG", new File(path)); 
    }


Il est normal que tu ais une perte de qualité, une solution serait d'augmenter la taille du container à l'écran pour améliorer la qualité de l'image.
Messages postés
14
Date d'inscription
mercredi 16 mai 2012
Statut
Membre
Dernière intervention
5 juillet 2014

Salut, merci beaucoup :)
cs_Julien39
Messages postés
6413
Date d'inscription
mardi 8 mars 2005
Statut
Modérateur
Dernière intervention
17 mai 2018
271
Dans ce cas, peux tu cliquer sur le "+" stp ?