Conversion image [jpg, gif ou png] [Résolu]

Signaler
Messages postés
16
Date d'inscription
lundi 29 septembre 2003
Statut
Membre
Dernière intervention
21 novembre 2005
-
Messages postés
16
Date d'inscription
lundi 29 septembre 2003
Statut
Membre
Dernière intervention
21 novembre 2005
-
Comment puis-je convertir une image d'un format [jpg, gif ou png] en un autre de ces format ?

Quel sont les packages que je dois utiliser avec la version 1.4.2 ou une version plus récente ?

Dois-je telecharger des class afin d'y parvenir?

Tout info concernant la convertion d'image me serait utile.

D'avance merci. :-)

10 réponses

Messages postés
2835
Date d'inscription
lundi 11 août 2003
Statut
Modérateur
Dernière intervention
16 décembre 2006
10
Salut

Faignant que tu es suffit juste de cliquer sur mon avatar et ensuite aller dans mes sources ! Allez je suis de bonné humeur :
http://www.javafr.com/code.aspx?ID=26783

@+
Messages postés
2835
Date d'inscription
lundi 11 août 2003
Statut
Modérateur
Dernière intervention
16 décembre 2006
10
Salut



Utilise la librarie ImageIO ... ce n'est pas dur à réaliser : 5 lignes devront suffir ...

Regarde ma source sur la capture d'écran et le redimensionnement d'une
image ... il ne te restera plus qu'à lire l'image avant de faire le
traitement qui est dans la source (euh 1 ligne !)



@+
Messages postés
16
Date d'inscription
lundi 29 septembre 2003
Statut
Membre
Dernière intervention
21 novembre 2005

Peux-tu me donner le lien de ta source stp neodante ?
Messages postés
16
Date d'inscription
lundi 29 septembre 2003
Statut
Membre
Dernière intervention
21 novembre 2005

J'étais pas sur que c'était la même. Tu me l'as confirmé. merci !!!
Messages postés
16
Date d'inscription
lundi 29 septembre 2003
Statut
Membre
Dernière intervention
21 novembre 2005

Je suis nulllllll.

Je ne vois pas comment convertir mon image en bufferedImage. Tu parles
de 5 lignes... elles sont obscures tes 5 lignes. voici mon code:



import java.awt.*;

import java.awt.image.BufferedImage;

import java.io.File;

import java.io.IOException;



import javax.imageio.ImageIO;





public class Conversion {



public final static String IMAGE_TYPE_JPEG = "jpeg";



public final static String IMAGE_TYPE_GIF = "gif";



public final static String IMAGE_TYPE_PNG = "png";



public static void conversion(

String urlSource,

String urlDestination,

String compressionType

)

{



Image tempImage = Toolkit.getDefaultToolkit().getImage(urlSource);



// BufferedImage buffer = ???;





// Ecriture

try {


ImageIO.write(buffer, compressionType, new File(urlDestination));

} catch (IOException e) {

e.printStackTrace();

}

}



public static void main(String[] args) {

Conversion.conversion(

"./essai/essai1.JPG",

"test.png",

Conversion.IMAGE_TYPE_PNG

);

}

}
Messages postés
16
Date d'inscription
lundi 29 septembre 2003
Statut
Membre
Dernière intervention
21 novembre 2005

je suis arrivé à une solution pour convertir... Mais Pourquoi ton exemple ne marche pas avec gif ???

voici mon code avec gif.

-------------------------------------------------------------------

import java.awt.Graphics2D;

import java.awt.RenderingHints;

import java.awt.image.BufferedImage;

import java.io.File;

import java.io.IOException;



import javax.imageio.ImageIO;





public class Conversion {



public final static String IMAGE_TYPE_JPEG = "jpeg";



public final static String IMAGE_TYPE_GIF = "gif";



public final static String IMAGE_TYPE_PNG = "png";



public static void conversion(

String urlSource,

String urlDestination,

String compressionType) {



// buffer

BufferedImage buf = null;

BufferedImage bufFinal = null;



// fichier source

File fichier = new File(urlSource);



// récuperation de l'image dans le buffer

try {

buf = ImageIO.read(fichier);

}

catch (IOException ex) {

}



// Création du buffer final

bufFinal = new BufferedImage(

buf.getWidth(),

buf.getHeight(),

BufferedImage.TYPE_INT_RGB);





// Redimensionnement de l'image si volonté

Graphics2D g = (Graphics2D) bufFinal.getGraphics();

g.setRenderingHint(RenderingHints.KEY_INTERPOLATION,


RenderingHints.VALUE_INTERPOLATION_BILINEAR);

g.drawImage(

buf,


0, 0, buf.getWidth(),buf.getHeight(),

null);

g.dispose();



// Ecriture du fichier destination

try {


ImageIO.write(bufFinal, compressionType, new File(urlDestination));

} catch (IOException e) {

e.printStackTrace();

}

}



public static void main(String[] args) {

Conversion.conversion(

"./essai/essai1.JPG",

"test.gif",

Conversion.IMAGE_TYPE_GIF);

}

}
Messages postés
2835
Date d'inscription
lundi 11 août 2003
Statut
Modérateur
Dernière intervention
16 décembre 2006
10
Salut



Utilises les méthode de la classe ImageIO pour voir si tu as bien un writer GIF, sinon quelle version du JDK utilises-tu ???

Utilise la méthode


getWriterFormatNames



http://java.sun.com/j2se/1.4.2/docs/api/javax/imageio/ImageIO.html



@+
Messages postés
16
Date d'inscription
lundi 29 septembre 2003
Statut
Membre
Dernière intervention
21 novembre 2005

j'utilise le jdk1.5 . J'ai utilisé le "getWriterFormatNames" comme tu
l'indiques et pas de gif reconnu... ce qu'il me sort c'est:

"BMP jpeg bmp wbmp JPG png jpg PNG WBMP JPEG".

Sinon comment peut-on ajouter du gif ?
Messages postés
2835
Date d'inscription
lundi 11 août 2003
Statut
Modérateur
Dernière intervention
16 décembre 2006
10
Salut



J'ai une implémentation GIF (je ne sais plus où je l'ai trouvé !) dans mon JDK ... j'en avais eu besoin pour un projet ...



@+
Messages postés
16
Date d'inscription
lundi 29 septembre 2003
Statut
Membre
Dernière intervention
21 novembre 2005

bon... alors tempis pour le gif.

Merci pour ton aide, ça m'a été utile!!! ;-)