Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1548 connectés 

  FORUM HardWare.fr
  Programmation
  Java

  conserver l'etat d'une bufferedImage

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

conserver l'etat d'une bufferedImage

n°2076358
Enygm
Posté le 16-05-2011 à 16:33:49  profilanswer
 

Bonjour à tous !
Je parcours très souvent votre forum qui regorge d'informations très utiles lorsque je suis bloqué !
Hors aujourd'hui je suis devant une impasse. Après une heure de recherche sur Internet, je n'ai toujours pas trouvé de réponses. C'est pourquoi je viens vous demander de l'aide :)
 
Voila mon problème :
 
Je voudrais, dans une applet Java, créer une bufferedImage et dessiner dedans, mais sans l'afficher.
Et plus tard dans mon code, je voudrais l'afficher telle que je l'ai dessinée précédemment.
 
Hors j'ai l'impression que le Graphics de la bufferedImage se réinitialise entre le moment ou je dessine et le moment ou je l'affiche dan l'applet.
 
D'ou ma question : Comment sauvegarder l'état graphique d'une bufferedImage sans passer par un fichier.
 
Voila mon code :
 

Code :
  1. //Fonction qui créé la bufferedImage et la renvoie dans un vecteur verticalImage ( la fonction setPolice change le font du //Graphics avec le nom, la taille et le style de la police )
  2. public Image createImage(Vector<String> chaine, String police)
  3. {
  4.  setPolice(getGraphics(), police);
  5.  BufferedImage tmpImg = new BufferedImage(this.getWidth(), this.getGraphics().getFontMetrics().getHeight()*(chaine.size()+1), BufferedImage.TYPE_INT_RGB);
  6.  setPolice(tmpImg.getGraphics(), police);
  7.  tmpImg.getGraphics().setColor(colorFontText);
  8.  tmpImg.getGraphics().fillRect(0, 0, tmpImg.getWidth(), tmpImg.getHeight());
  9.  tmpImg.getGraphics().setColor(colorText);
  10.  tmpImg.getGraphics().drawRect(0, 0, tmpImg.getWidth(), tmpImg.getHeight());
  11.  for(int i=0;i<chaine.size();++i)
  12.  {
  13.   tmpImg.getGraphics().drawString(chaine.elementAt(i), tmpImg.getWidth()/2-(tmpImg.getGraphics().getFontMetrics().stringWidth(chaine.elementAt(i))/2), tmpImg.getGraphics().getFontMetrics().getHeight()*(i+1));
  14.  }
  15.  Image img = tmpImg;
  16.  return img;
  17. }


 
et voici la fonction d'appel qui est elle-même appelée dans la fonction paint()
 

Code :
  1. public void afficherCadre(int width, int height, Graphics g)
  2. {
  3.  verticalImage = redimensionImages(verticalImage, true, width, height);
  4.  horizontalImage = redimensionImages(horizontalImage, false, width, height);
  5.  int x =0;
  6.  int y =0;
  7.  for(int i=0;i<verticalImage.size();++i)
  8.  {
  9.   g.drawImage(verticalImage.elementAt(i), x, 0, null);
  10.   x+=verticalImage.elementAt(i).getWidth(null);
  11.   y = verticalImage.elementAt(i).getHeight(null);
  12.  }
  13. }


 
 
Voila, merci d'avance !
Cordialement
 
Enygm

mood
Publicité
Posté le 16-05-2011 à 16:33:49  profilanswer
 


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  Java

  conserver l'etat d'une bufferedImage

 

Sujets relatifs
[Mysql] DELETE et conserver un nombre fixe de lignesBufferedImage a passer en parametre
Sous etat non imprimé quand requête source est vide[VBA Access]Changer taille et caractère dans un état
[java] Afficher une BufferedImage dans un Jframe ?Comment integrer un état fait avec birt dans un jsp?
récupérer l'état d'un processusAccess2003+état requete analyse croisée avec nombre champs variables
Pb d'affichage conditionnel d'objet dans un étatAccess ouverture d'un état paramétré avec variable VBA
Plus de sujets relatifs à : conserver l'etat d'une bufferedImage


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR