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 :

Comment manipuler des images ?


Sujet :

2D Java

  1. #1
    Rédacteur

    Inscrit en
    Novembre 2006
    Messages
    1 272
    Détails du profil
    Informations forums :
    Inscription : Novembre 2006
    Messages : 1 272
    Points : 1 672
    Points
    1 672
    Par défaut Comment manipuler des images ?
    Bonjour,

    Je voudrais savoir comment peut on faire pour manipuler des images en java.

    J'ai un tableau de byte unidimensionnel qui represente les pixels de l'image et je voudrais juste les faire afficher dans un control. J'utilise Swing pour l'HIM.
    si quelqu'un peut me dire comment on fait pour d'un tableau de byte arriver a faire afficher l'image correspond a ce tableau dans un control se serai vraiment sympas.

    Je suis pas tres experimenté en java si quelqu'un peu m'aider merci par avance.

  2. #2
    Rédacteur/Modérateur

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

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

    Informations forums :
    Inscription : Août 2005
    Messages : 6 849
    Points : 22 858
    Points
    22 858
    Billets dans le blog
    51
    Par défaut
    1) La solution simpliste : surcharger la methode paintComponent() d'un JPanel ou JComponent et dessiner des rectangles 1x1 de couleur a l'ecran.

    2) Il t'es possible de creer une BufferedImage et de la remplir via la variante de la methode de la methode setRGB() qui prend un tableau unidimensionnel. Par contre cette methode prend un tableau d'entier (32-bits donc) ou chaque entier stocke une couleur sous le format ARGB :
    A = 1 octet (bits 31<-24) pour stocker l'alpha (transparence ; si image opaque mettre 255).
    R = 1 octet (bits 23<-16) pour stocker le rouge.
    G = 1 octet (bits 15<-8) pour stocker le vert.
    B = 1 octet (bits 8<-0) pour stocker le bleu.
    Tu peux aussi appeler la variante de setRGB() qui marche pixel a pixel mais ce sera plus long.
    Ensuite : surcharger la methode paintComponent() d'un JPanel ou JComponent et dessiner l'image a l'ecran.

    3) ? Encapsuler ton tableau dans un Raster ou WritableRaster et creer une BufferedImage avec ?
    Meme chose pour l'affichage.

  3. #3
    Rédacteur

    Inscrit en
    Novembre 2006
    Messages
    1 272
    Détails du profil
    Informations forums :
    Inscription : Novembre 2006
    Messages : 1 272
    Points : 1 672
    Points
    1 672
    Par défaut
    Merci de ton aide je pense pouvoir me débrouiller.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 2
    Dernier message: 26/08/2011, 23h20
  2. Comment manipuler des images 3D
    Par takfa2008 dans le forum Traitement d'images
    Réponses: 4
    Dernier message: 24/12/2008, 13h08
  3. [VBA-E]Manipuler des images
    Par nils.angot dans le forum Macros et VBA Excel
    Réponses: 7
    Dernier message: 14/02/2006, 10h59
  4. Comment stocker des images dans une base de données ?
    Par [Silk] dans le forum Bases de données
    Réponses: 4
    Dernier message: 21/07/2005, 11h29
  5. [TP][MULTI-PROBLEME]Comment afficher des images pcx
    Par mikoeur dans le forum Turbo Pascal
    Réponses: 7
    Dernier message: 24/10/2002, 13h57

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