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

  FORUM HardWare.fr
  Programmation
  Java

  Redimensionner une image pour affichage

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Redimensionner une image pour affichage

n°240085
kigid
Posté le 05-11-2002 à 20:16:44  profilanswer
 

Salut à tous !
 
Je voudrais savoir comment je pourrais redimensionner une image de type "jpeg", "gif", "bmp" afin de pouvoir effectuer un affichage presque "standard"(dimensions fixes) à partir d'images de n'importe quelles dimensions...
 
Voilà tout le problème...
 
Merci d'avance !
 

mood
Publicité
Posté le 05-11-2002 à 20:16:44  profilanswer
 

n°240148
smax
Posté le 05-11-2002 à 22:26:40  profilanswer
 

essaye ca : JavaTM Advanced Imaging API  
 
http://java.sun.com/products/java-media/jai/


---------------
Avoir un arbre dans son jardin n'empêche en rien de se promener en forêt.
n°240156
HappyHarry
Posté le 05-11-2002 à 22:30:21  profilanswer
 

ca va etre tres tres moche, si tu prends une taille standard .. bonjour les disproportions

n°240341
El_gringo
Posté le 06-11-2002 à 09:02:10  profilanswer
 

Ouais, utilise JAI.
Avec JAI, essayer de faire qqch avec juste la Javadoc, c impossible.
Avec le guide JAI, c pas tout simple.
Alors fais comme ça pour redimentionner ton image :

Code :
  1. // Ouverture de l'image en mémoire
  2. FileSeekableStream stream = new FileSeekableStream(fTonFichierImage);
  3. PlanarImage image = JAI.create("stream", stream);
  4. /* Redimentionnement : toi, ce qui t'interresse, c'est this.m_fScaleX et this.m_fScaleY qui est l'échelle par rapport à la nouvelle taille, en X et en Y (c un taux : 1,0 est la taille originale) */
  5. ParameterBlockJAI pb = new ParameterBlockJAI("scale" );
  6. pb.addSource(this.image);                   // Image
  7. pb.set(this.m_fScaleX, 0);                  // Scale en X
  8. pb.set(this.m_fScaleY, 1);                  // Scale en Y
  9. pb.set(0.0F, 2);                            // translation en X
  10. pb.set(0.0F, 3);                            // translation en Y
  11. pb.set(new InterpolationNearest(), 4);      // Interpolation
  12. // Crée l'opération de scale
  13. PlanarImage newImage= JAI.create("scale", pb, null);
  14. // Pour afficher l'image tu peux par exmeple faire ça :
  15. JAI.create("encode", image, _out, strFormat, null);
  16. // _out étant un flux de sortie (OutputStream)


 
Voila, bonne chance...


Message édité par El_gringo le 06-11-2002 à 09:03:10
n°240343
El_gringo
Posté le 06-11-2002 à 09:17:38  profilanswer
 

...Pour faire le lien avec AWT :  
PlanarImage est une RenderedImage.

n°240385
darklord
You're welcome
Posté le 06-11-2002 à 10:16:36  profilanswer
 

[:cupra]


---------------
Just because you feel good does not make you right
n°240392
El_gringo
Posté le 06-11-2002 à 10:32:54  profilanswer
 

ça veut dire quoi ce smiley ?

n°240397
darklord
You're welcome
Posté le 06-11-2002 à 10:51:14  profilanswer
 

que j'ai lu le thread et que je n'ai rien à ajouter ...


---------------
Just because you feel good does not make you right
n°240438
El_gringo
Posté le 06-11-2002 à 12:29:02  profilanswer
 

haaa... ok !
ça représente quoi au juste ?

n°240466
HappyHarry
Posté le 06-11-2002 à 13:28:56  profilanswer
 

El_Gringo a écrit a écrit :

haaa... ok !
ça représente quoi au juste ?




 
un smiley qui se cache derriere un rideau

mood
Publicité
Posté le 06-11-2002 à 13:28:56  profilanswer
 

n°242306
kigid
Posté le 09-11-2002 à 17:34:02  profilanswer
 

Citation :

Ouais, utilise JAI.  
Avec JAI, essayer de faire qqch avec juste la Javadoc, c impossible.  
Avec le guide JAI, c pas tout simple.  
Alors fais comme ça pour redimentionner ton image :[cpp]  
// Ouverture de l'image en mémoire  
FileSeekableStream stream = new FileSeekableStream(fTonFichierImage);  
PlanarImage image = JAI.create("stream", stream);  
/* Redimentionnement : toi, ce qui t'interresse, c'est this.m_fScaleX et this.m_fScaleY qui est l'échelle par rapport à la nouvelle taille, en X et en Y (c un taux : 1,0 est la taille originale) */  
ParameterBlockJAI pb = new ParameterBlockJAI("scale" );  
pb.addSource(this.image);                   // Image  
pb.set(this.m_fScaleX, 0);                  // Scale en X  
pb.set(this.m_fScaleY, 1);                  // Scale en Y  
pb.set(0.0F, 2);                            // translation en X  
pb.set(0.0F, 3);                            // translation en Y  
pb.set(new InterpolationNearest(), 4);      // Interpolation  
 
// Crée l'opération de scale  
PlanarImage newImage= JAI.create("scale", pb, null);  
 
// Pour afficher l'image tu peux par exmeple faire ça :  
JAI.create("encode", image, _out, strFormat, null);  
// _out étant un flux de sortie (OutputStream)  


 
Je fais mon truc en Swing et j'ai plein d'erreurs à la compilation...
 
HELP !!!
 
Merci.

n°242315
casquetta
Posté le 09-11-2002 à 17:45:04  profilanswer
 

iut orsay detected ! 2eme année

n°242335
kigid
Posté le 09-11-2002 à 18:05:33  profilanswer
 

Arabic man detected !

n°242339
casquetta
Posté le 09-11-2002 à 18:07:47  profilanswer
 

ex-ramasseur de coton detected :fuck:

n°243297
El_gringo
Posté le 12-11-2002 à 09:01:07  profilanswer
 

kigid a écrit a écrit :

Citation :

Ouais, utilise JAI.  
Avec JAI, essayer de faire qqch avec juste la Javadoc, c impossible.  
Avec le guide JAI, c pas tout simple.  
Alors fais comme ça pour redimentionner ton image :[cpp]  
// Ouverture de l'image en mémoire  
FileSeekableStream stream = new FileSeekableStream(fTonFichierImage);  
PlanarImage image = JAI.create("stream", stream);  
/* Redimentionnement : toi, ce qui t'interresse, c'est this.m_fScaleX et this.m_fScaleY qui est l'échelle par rapport à la nouvelle taille, en X et en Y (c un taux : 1,0 est la taille originale) */  
ParameterBlockJAI pb = new ParameterBlockJAI("scale" );  
pb.addSource(this.image);                   // Image  
pb.set(this.m_fScaleX, 0);                  // Scale en X  
pb.set(this.m_fScaleY, 1);                  // Scale en Y  
pb.set(0.0F, 2);                            // translation en X  
pb.set(0.0F, 3);                            // translation en Y  
pb.set(new InterpolationNearest(), 4);      // Interpolation  
 
// Crée l'opération de scale  
PlanarImage newImage= JAI.create("scale", pb, null);  
 
// Pour afficher l'image tu peux par exmeple faire ça :  
JAI.create("encode", image, _out, strFormat, null);  
// _out étant un flux de sortie (OutputStream)  


 
Je fais mon truc en Swing et j'ai plein d'erreurs à la compilation...
 
HELP !!!
 
Merci.




 
Bah, si tu dis pas ce que c'est tes erreurs, personne risque de t'aider !

n°243958
kigid
Posté le 13-11-2002 à 11:16:20  profilanswer
 

En fait, ma question c'est comment utilise-t-on JAI ???
 
Voilà...

n°244031
El_gringo
Posté le 13-11-2002 à 12:55:47  profilanswer
 

kigid a écrit a écrit :

En fait, ma question c'est comment utilise-t-on JAI ???
 
Voilà...




 
Comme pour n'importe quelle API...
On l'téléchargé (apprend à utiliser un moteur de recherche)
On installe pour le runtime (pour JAI, c un bête setup)
On l'installe pour la compile (classpath)

n°244119
darklord
You're welcome
Posté le 13-11-2002 à 14:20:11  profilanswer
 

kigid a écrit a écrit :

En fait, ma question c'est comment utilise-t-on JAI ???
 
Voilà...




 
 :pfff:


---------------
Just because you feel good does not make you right

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

  Redimensionner une image pour affichage

 

Sujets relatifs
Impression d'une image issue d'un script PHPComment mettre en couleur une string à l'affichage ?
[access] inserer une image dans une baseAfficher une image à l'aide d'une feuille XSLT
[HTML] Faire défiler un texte par dessus une image...Question de nioubi sur le forum PPC : affichage du code des smileys
Image JPG enregistrée en BMP, explication ?Affichage de champs de type mémo sur base access
Probleme d'affichage de Canvas dans un panel[servlet]Récupérer la valeur d'un submit "image" dans ma servlet
Plus de sujets relatifs à : Redimensionner une image pour affichage


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