IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Java Discussion :

Problème enregistrement image


Sujet :

Java

Mode arborescent

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Inscrit en
    Mars 2008
    Messages
    111
    Détails du profil
    Informations forums :
    Inscription : Mars 2008
    Messages : 111
    Par défaut Problème enregistrement image
    Bonjour,

    J'ai fait un petit programme qui permet d'appliquer une roation à une image et d'enregistrer les modifications.

    Le code d'enregistrement est:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
     
    public static void enregistrerImage(BufferedImage imBuff_,String format_,String nomImage_){
     
    	File ficherImage=new File(nomImage_);
    	try {
    		ImageIO.write(imBuff_, format_, ficherImage);
    	} catch (IOException e) {
     
    		e.printStackTrace();
    	}
     
     
     
     
    }
    Le code qui permet d'effectuer la roation est:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
     
    public static BufferedImage rotate(double angled, BufferedImage image){
     
    			 double angle=angled*Math.PI*1/180;
    			   double sin = Math.abs(Math.sin(angle)), cos = Math.abs(Math.cos(angle));
    		        int w = image.getWidth(), h = image.getHeight();
    		        int neww = (int)Math.floor(w*cos+h*sin), newh = (int)Math.floor(h*cos+w*sin);
    		        GraphicsConfiguration gc = getDefaultConfiguration();
    		        BufferedImage result = gc.createCompatibleImage(neww, newh, Transparency.TRANSLUCENT);
    		        Graphics2D g = result.createGraphics();
    		        g.translate((neww-w)/2, (newh-h)/2);
    		        g.rotate(angle, w/2, h/2);
    		        g.drawRenderedImage(image, null);
    		        g.dispose();
    		        return result;
     
     
    		   }
     public static GraphicsConfiguration getDefaultConfiguration() {
    		        GraphicsEnvironment ge = GraphicsEnvironment.getLocalGraphicsEnvironment();
    		        GraphicsDevice gd = ge.getDefaultScreenDevice();
    		        return gd.getDefaultConfiguration();
    		    }
     
     
     
     
     
     
    }
    Lorsque j'afficher direcement l'image dans une JFrame, tout ce passe bien, image bien retournée et même qualité. Mais quand j'enregistre une image retournée sous un format autre que png l'image aparait un peut flou(première photo en fichier attaché).

    D'où pourrait venir le problème?

    Merci.
    Images attachées Images attachées   

Discussions similaires

  1. [Débutant] Probléme enregistrement image picturebox aprés modification
    Par Audrey43 dans le forum VB.NET
    Réponses: 11
    Dernier message: 24/02/2012, 14h41
  2. Problème couleur enregistrement image
    Par jparc dans le forum MATLAB
    Réponses: 2
    Dernier message: 19/05/2011, 14h31
  3. Probléme enregistrement image webcam
    Par devnino dans le forum Langage
    Réponses: 3
    Dernier message: 16/07/2010, 10h30
  4. Interop.Word Enregistrer fichier problème encodage image
    Par the java lover dans le forum C#
    Réponses: 1
    Dernier message: 13/01/2010, 10h36
  5. Problème d'image avec DirectX9 et c# VS.net...
    Par lilly_lilly dans le forum DirectX
    Réponses: 1
    Dernier message: 02/03/2004, 14h02

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo