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

  FORUM HardWare.fr
  Programmation
  Java

  Créer un fichier Jpeg a partir d'objet "Image" ou "Graphics"

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Créer un fichier Jpeg a partir d'objet "Image" ou "Graphics"

n°336411
Profil sup​primé
Posté le 18-03-2003 à 14:58:39  answer
 

Salut :hello:
 
Je suis de retour sur le forum programation avec une petite question java.
 
En effet, en ce moment je programme un petit utilitaire de dessin.
Je dessine dans un JPanel, le dessin étant memorisé dans une "Image" (en fait je dessine dans le "Graphics" associé a l'"Image" puis j'affiche l'image avec "drawImage" dans le "Graphics" du JPanel.
 
Ce que j'aimerai maitnenant c'est avoir la possibilité d'"enregistrer cette image en jpg, mais malgré mes recherches dans la java doc et sur le net je n'ai pas réussi.
 
Si vous avez des explication ou URL n'hésitez pas :jap:
 
(je bosse sous 1.3.1)

mood
Publicité
Posté le 18-03-2003 à 14:58:39  profilanswer
 

n°336414
bobuse
Posté le 18-03-2003 à 15:04:56  profilanswer
 

deja poste au moins deux fois ...
par contre, ca marche mieux en PNG si mes souvenirs sont bons (JPEG, c'est pas libre !)


---------------
get amaroK plugin
n°336417
Profil sup​primé
Posté le 18-03-2003 à 15:09:07  answer
 

je veins de re rechercher, je trouve pas les topics en question :/ (j'ai cherché sur image et jpeg et png dans la cat java...)

n°336418
bobuse
Posté le 18-03-2003 à 15:09:11  profilanswer
 

bobuse a écrit :

grossomodo, voila comment j'avais fait à l'epoque :
J'utilisais Java2D pour dessiner mes trucs sur MonPanel après,

Code :
  1. public void saveGraph() {
  2.     BufferedImage outImage=new BufferedImage(MonPanel.getWidth(),MonPanel.getHeight(),BufferedImage.TYPE_INT_RGB);
  3.     Graphics2D graphics=outImage.createGraphics();
  4.     MonPanel.paint(graphics);
  5.     File outFile=new File("out.png" );
  6.     try {
  7.         if (!ImageIO.write(outImage,"png",outFile))
  8.             System.out.println("Format d'écriture non pris en charge" );
  9.     } catch (Exception e) {
  10.         System.out.println("erreur dans l'enregistrement de l'image :" );
  11.         e.printStackTrace();
  12.     }
  13. }


 
Je sais pas si c'est la meilleure méthode mais ça marchait nickel ...


source http://forum.hardware.fr/forum2.ph [...] h=&subcat=
yen a d'autres des topics sur le sujet ...


---------------
get amaroK plugin
n°336419
BifaceMcLe​OD
The HighGlandeur
Posté le 18-03-2003 à 15:10:38  profilanswer
 

A ma connaissance, JPEG est libre, c'est GIF qui ne l'est pas.

n°336421
bobuse
Posté le 18-03-2003 à 15:13:47  profilanswer
 

BifaceMcLeOD a écrit :

A ma connaissance, JPEG est libre, c'est GIF qui ne l'est pas.


ha bon ? autant pour moi [:ooooo]
Mais bon, en tout cas, c'est plus adapté du PNG, et puis les lib sont plus faciles a utiliser si mes souvemirs sont bons  ;)


---------------
get amaroK plugin
n°336424
Profil sup​primé
Posté le 18-03-2003 à 15:16:18  answer
 

bobuse a écrit :


source http://forum.hardware.fr/forum2.ph [...] h=&subcat=
yen a d'autres des topics sur le sujet ...

en gros il suffit d'écrire la buffered image dans un ficheir ? il n'y  a pas de fonctions a utiliser pr encoder ? (ou alros y a un truc que j'ai pas vu)

n°336427
bobuse
Posté le 18-03-2003 à 15:19:06  profilanswer
 

heu c'est pas un write a la con kan meme ...
 

Citation :

ImageIO.write(...)


---------------
get amaroK plugin
n°336428
Profil sup​primé
Posté le 18-03-2003 à 15:19:57  answer
 

bobuse a écrit :

heu c'est pas un write a la con kan meme ...
 

Citation :

ImageIO.write(...)

 

oups j'avai po vu :D
 
merci :jap:

n°336430
El_gringo
Posté le 18-03-2003 à 15:37:08  profilanswer
 

mr_mat a écrit :

oups j'avai po vu :D
 
merci :jap:


 
Mais le package image n'est apparu que dans le jdk 1.4.

mood
Publicité
Posté le 18-03-2003 à 15:37:08  profilanswer
 

n°336434
gm_superst​ar
Appelez-moi Super
Posté le 18-03-2003 à 15:43:49  profilanswer
 

Code :
  1. import com.sun.image.codec.jpeg.*;
  2. try {
  3.     flux = new FileOutputStream(nomDuFichier);
  4.     fluxBuf = new BufferedOutputStream(flux);
  5.     codec = JPEGCodec.createJPEGEncoder(fluxBuf, JPEGCodec.getDefaultJPEGEncodeParam(monImage));
  6.     codec.encode(monImage);
  7.     fluxBuf.close();
  8. catch (Exception e) {
  9.     e.printStackTrace();
  10. }


 
Avec monImage, une BufferedImage.


---------------
Incongru : une FAQ abandonnée sur les Standards du Web - FAQ périmée de blabla@Prog
n°336480
BifaceMcLe​OD
The HighGlandeur
Posté le 18-03-2003 à 16:38:15  profilanswer
 

bobuse a écrit :


ha bon ? autant pour moi [:ooooo]
Mais bon, en tout cas, c'est plus adapté du PNG, et puis les lib sont plus faciles a utiliser si mes souvemirs sont bons  ;)  


Pas le même usage. JPG compresse bien les images représentant  des scènes (photos ou images générées), de manière générale des images avec très peu de régularité (des formes géométriques, pour simplifier) ; PNG et GIF compressent bien les images contenant une grande régularité (aplats, où JPEG crée des artefacts) ou peu de nuances de couleurs (type captures d'écran)


Message édité par BifaceMcLeOD le 18-03-2003 à 16:39:26
n°336484
bobuse
Posté le 18-03-2003 à 16:43:05  profilanswer
 

BifaceMcLeOD a écrit :


Pas le même usage. JPG compresse bien les images représentant  des scènes (photos ou images générées), de manière générale des images avec très peu de régularité (des formes géométriques, pour simplifier) ; PNG et GIF compressent bien les images contenant une grande régularité (aplats, où JPEG crée des artefacts) ou peu de nuances de couleurs (type captures d'écran)


Justement ! A priori le JPanel est pas censé représenter une image "naturelle", mais plutot geometrique :)


---------------
get amaroK plugin
n°336486
BifaceMcLe​OD
The HighGlandeur
Posté le 18-03-2003 à 16:44:53  profilanswer
 

:heink:
...
 
 :o Dans le cas de mr_mat, c'est exact.  :jap:


Message édité par BifaceMcLeOD le 18-03-2003 à 16:45:42
n°336487
bobuse
Posté le 18-03-2003 à 16:45:53  profilanswer
 

BifaceMcLeOD a écrit :

Dans le cas de mr_mat, c'est exact.  :jap:  


ok  [:z-bob]


---------------
get amaroK plugin
n°340467
Profil sup​primé
Posté le 22-03-2003 à 17:52:51  answer
 

après qq essai en effet c que dans le 1.4 le pack imageio :D
 
je vai tester avec jpegencodermachintruc :jap:
 
au fait vous battez pas pr sdavoir si il faut du jpg ou du png, les deux seront possibles a terme :)


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

  Créer un fichier Jpeg a partir d'objet "Image" ou "Graphics"

 

Sujets relatifs
[php] Générer petit image a partir d'une grandeMySQL à partir d'un prog en C??
PHP orienté objet. Class Caddie, comment récupérer "tous" les articles[C] Comment calculer la taille d'un fichier??
Impossible de lire une imagePb ecriture dans un fichier: retour à la ligne?
lire et ecrire dans un fichier[XML/JS] Generation de XML à partir de la DTD
enregistrer un fichier au lieu de l'ouvrir dans le navigateur 
Plus de sujets relatifs à : Créer un fichier Jpeg a partir d'objet "Image" ou "Graphics"


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