Conversion image

Soyez le premier à donner votre avis sur cette source.

Vue 15 665 fois - Téléchargée 1 397 fois

Description

Conversion d'une image en un autre type de format. La conversion est de deux type soit de fichier à fichier ou bien de type image à fichier.

Source / Exemple :


package Conversion;

import java.awt.Image;

import java.awt.Dimension;
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 {

    /**

  • Type de compression BMP
  • /
public final static String IMAGE_TYPE_BMP = "BMP"; /**
  • Type de compression WBMP
  • /
public final static String IMAGE_TYPE_WBMP = "WBMP"; /**
  • Type de compression JPEG
  • /
public final static String IMAGE_TYPE_JPEG = "JPEG"; /**
  • Type de compression PNG
  • /
public final static String IMAGE_TYPE_PNG = "PNG"; /**
  • Conversion sans modification de taille d'un fichier
  • @param fichierSource File
  • @param fichierDestination File
  • @param compressionType String
  • /
public Conversion( File fichierSource, File fichierDestination, String compressionType) { // buffer BufferedImage buf = null; BufferedImage bufFinal = null; // récuperation de l'image dans le buffer try { buf = ImageIO.read(fichierSource); } 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, fichierDestination); } catch (IOException e) { e.printStackTrace(); } } /**
  • Conversion sans modification de taille d'une image de type Image
  • @param image Image
  • @param fichierDestination File
  • @param compressionType String
  • /
public Conversion( Image image, File fichierDestination, String compressionType) { // buffer BufferedImage bufFinal = null; //System.out.println("Conversion image: x: " + image.getWidth(null) + " y: " + image.getHeight(null)); // Création du buffer final bufFinal = new BufferedImage( image.getWidth(null) ,image.getHeight(null), 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( image, 0, 0, image.getWidth(null), image.getHeight(null), null); g.dispose(); // Ecriture du fichier destination try { ImageIO.write(bufFinal, compressionType, fichierDestination); } catch (IOException e) { e.printStackTrace(); } } public static void main(String[] args) { new Conversion( new File("./essai/essai1.JPG"), new File("test.png"), Conversion.IMAGE_TYPE_PNG); } }

Codes Sources

A voir également

Ajouter un commentaire

Commentaires

Messages postés
2
Date d'inscription
mardi 20 mars 2007
Statut
Membre
Dernière intervention
9 novembre 2011

Parfait ce code! Juste ce qu'il me fallait un convertisseur facile d'utilisation, en plus comme dans l'exemple, je devais aller de JPG vers PNG donc j'ai juste eu un copier-coller à faire ^^
Pour info ça me sert à convertir tous les formats d'images vers du PNG afin de pouvoir l'écrire dans un fichier Excel (avec la librairie Jxl) qui n'accepte que ce format. Merci!
Messages postés
1
Date d'inscription
mercredi 24 février 2010
Statut
Membre
Dernière intervention
11 mars 2010

vous avez introduit un bon travail je te félicite mais est ce vous pouvez m'aider pour la transformation d'une image de visage à un matrice de distribution.
Merci
Messages postés
44
Date d'inscription
lundi 12 décembre 2005
Statut
Membre
Dernière intervention
11 août 2006

quand je lance le programme ca me di :
java.lang.NoClassDefFoundError: Conversion
Exception in thread "main"
Java Result: 1

je compren pa
Merci de maider
dushit

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.