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

2D Java Discussion :

problème pour sauvegarder une image


Sujet :

2D Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Inscrit en
    Septembre 2006
    Messages
    36
    Détails du profil
    Informations personnelles :
    Âge : 39

    Informations forums :
    Inscription : Septembre 2006
    Messages : 36
    Par défaut problème pour sauvegarder une image
    Bonjour;

    je suis entrain de transférer des images a travers un réseaux en utilisant les RMI

    pour ce faire j'ai du transformer mon image de Image a int[] car Image n'est pas séréiablizable.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    ((BufferedImage) image).getRGB(0,0,image.getWidth(jc),image.getHeight(jc),temp,0,image.getWidth(jc)),
    de l'autre coté jé reconstruit mon image avec
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    image = Toolkit.getDefaultToolkit().createImage(new MemoryImageSource(rect.width, rect.height, is.getImageInPixel(), 0,rect.width));
    jusqua la pas de problème

    mais quand je veus sauvegarder mon image sur le server entre les 2 clients
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    try {
                        int Imagewidth = requests.getChanges().getElement().getRect().width;
                        int Imageheight = requests.getChanges().getElement().getRect().height;
                        ImageIcon img = Toolkit.getDefaultToolkit().createImage(new MemoryImageSource(Imagewidth, Imageheight, ((ImageSendable)requests.getChanges().getElement()).getImageInPixel(), 0,Imagewidth));
                        ImageIO.write(
                                (RenderedImage)img
                                , "jpg"
                                , new File("/images_document/"+IDDocument+"_"+requests.getChanges().getElement().getID())
                            );
                    } catch (IOException e) {
                        // TODO Auto-generated catch block
                        e.printStackTrace();
                    }
    j'obtiens
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    Exception in thread "Thread-2" java.lang.ClassCastException: sun.awt.image.ToolkitImage cannot be cast to java.awt.image.RenderedImage
        at XMLToStyledDocument.XMLDrawingDocument.requestDecompilerServer(XMLDrawingDocument.java:86)
        at serveur.FileHandler.MyDrawingFileHandlerThread.run(MyDrawingFileHandlerThread.java:46)
    voila

    je suis pas un expert en image donc si quelqu'un pouvait m'expliquer ou je me plante ?

    quand j'essaye d'enregistrer une Image utilisait IOImage pas de soucis
    quand je décompose et recompose mon image en tableau de int pas de soucis

    mais quand je combine les 2 d'un coup sa marche plus...

    donc si quelqu'un a une solution qui me permette de transeferer a travers RMI une image (sous n'importa quel forme) et de la sauvegarder sur mon server il me sauverais.

  2. #2
    Rédacteur/Modérateur

    Avatar de bouye
    Homme Profil pro
    Information Technologies Specialist (Scientific Computing)
    Inscrit en
    Août 2005
    Messages
    6 901
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : Nouvelle-Calédonie

    Informations professionnelles :
    Activité : Information Technologies Specialist (Scientific Computing)
    Secteur : Agroalimentaire - Agriculture

    Informations forums :
    Inscription : Août 2005
    Messages : 6 901
    Billets dans le blog
    54
    Par défaut
    L'exception est claire pourtant : l'image retournee par Toolkit n'est pas une instance de RenderedImage. Tu dois creer une BufferedImage a la bonne taille et dessiner l'image retournee par Toolkit dedans.

    Sinon laisse tomber Toolkit machin et truc : prend un ByteArrayOutputStream et enregistres-y ton image au format png avec ImageIO puis recupere un byte[]. Envoie le sur le reseau. De l'autre cote met ce byte[] dans un ByteArrayInputStream et relis ton image grace a ImageIO. Ca te permettras de minimiser les donnees envoyees sur le reseau.
    Merci de penser au tag quand une réponse a été apportée à votre question. Aucune réponse ne sera donnée à des messages privés portant sur des questions d'ordre technique. Les forums sont là pour que vous y postiez publiquement vos problèmes.

    suivez mon blog sur Développez.

    Programming today is a race between software engineers striving to build bigger and better idiot-proof programs, and the universe trying to produce bigger and better idiots. So far, the universe is winning. ~ Rich Cook

Discussions similaires

  1. Problème pour insérer une image
    Par Paulinho dans le forum Tableaux - Graphiques - Images - Flottants
    Réponses: 4
    Dernier message: 26/04/2006, 23h36
  2. [PDE] Problème pour sauvegarder une modif dans un éditeur
    Par simsky dans le forum Eclipse Java
    Réponses: 11
    Dernier message: 11/08/2005, 15h05
  3. Problème pour afficher une image bmp
    Par homeostasie dans le forum MFC
    Réponses: 6
    Dernier message: 08/05/2005, 18h36
  4. [MFC]Problème pour afficher une image.
    Par Deedier dans le forum MFC
    Réponses: 4
    Dernier message: 25/03/2005, 16h13
  5. Réponses: 13
    Dernier message: 23/12/2004, 18h01

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