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

API standards et tierces Java Discussion :

[information] utiliser des "dessins" si le fichier image n'est pas trouvé


Sujet :

API standards et tierces Java

  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Juin 2005
    Messages
    760
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2005
    Messages : 760
    Points : 626
    Points
    626
    Par défaut [information] utiliser des "dessins" si le fichier image n'est pas trouvé
    Bonjour,
    Comme l'explique le titre de ce post, je souhaite utiliser des "dessins" si le fichier image n'est pas trouvé. Pour etre plus precis, j'utilise des images (*.gif) dans mon programme afin de remplir mon interface. Je souhaite coder un "intermediaire de chargement" qui va regarder si le fichier image demandé est disponible, si il l'est alors il le charge et le met à dispositions de ses "clients" sinon il utilise des fonctions de dessin afin de créer un fichier image fictif.
    Ma question est quel type d'objet puis je utiliser qu'y puisse à la fois permettre de stocker une "vrai" image ou un "dessin"?
    D'avance merci

    PS : Pour l'instant j'utilise javax.swing.ImageIcon, et java.awt.image.BufferedImage...

  2. #2
    Gfx
    Gfx est déconnecté
    Expert éminent
    Avatar de Gfx
    Inscrit en
    Mai 2005
    Messages
    1 770
    Détails du profil
    Informations personnelles :
    Âge : 41

    Informations forums :
    Inscription : Mai 2005
    Messages : 1 770
    Points : 8 178
    Points
    8 178
    Par défaut
    Eh bien une BufferedImage. Tu peux en créer une ainsi :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
     
    BufferedImage image = null;
    if (fichierTrouve) {
      image = chargerFichierImage();
    } else {
      // image de 32x32 pixels
      image = new BufferedImage(32, 32, BufferedImage.TYPE_INT_RGB);
      Graphics2D g = image.createGraphics();
      // dessiner le machin fictif sur "g"
      g.dispose();
    }
    Et voilà ! Pour faire encore plus propre je te conseille de créer une "compatible image" :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
     
    public class GraphicsUtil {
        private static GraphicsConfiguration configuration = GraphicsEnvironment.getLocalGraphicsEnvironment().getDefaultScreenDevice().getDefaultConfiguration();
     
        private GraphicsUtil() {
        }
     
        public static BufferedImage createCompatibleImage(int width, int height) {
            return configuration.createCompatibleImage(width, height);
        }
    }
    Tu remplaces alors le new BufferedImage(...) par un appel à Graphicsutil. createCompatibleImage(...).
    Romain Guy
    Android - Mon livre - Mon blog

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Juin 2005
    Messages
    760
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2005
    Messages : 760
    Points : 626
    Points
    626
    Par défaut
    ok, merci.

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

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