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

Graphisme Java Discussion :

Récupérer le format d'image à partir d'un BufferedImage


Sujet :

Graphisme Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Invité de passage

    Profil pro
    Inscrit en
    Décembre 2003
    Messages
    3 995
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2003
    Messages : 3 995
    Par défaut Récupérer le format d'image à partir d'un BufferedImage
    Bonjour,

    Je suis en train d'écrire un programme qui downsize les images, mais je veux le faire seulement si la taille de l'image dépasse une certaine résolution ou si ça n'est pas une JPEG (dans ce cas, je me contente de recopier le fichier). Problème : comment reconnaitre une JPEG à coup sûr, de manière un peu plus fiable qu'en récupérant l'extension du nom de fichier ?

    Je créé simplement un BufferedImage :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    BufferedImage imageSource = ImageIO.read(new File(filePath));

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

    Informations forums :
    Inscription : Mai 2005
    Messages : 1 770
    Par défaut
    Tu pourrais lire l'en-tête des fichiers mais ta BufferedImage ne te dira jamais ça.

  3. #3
    Membre émérite
    Profil pro
    Inscrit en
    Février 2007
    Messages
    572
    Détails du profil
    Informations personnelles :
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations forums :
    Inscription : Février 2007
    Messages : 572
    Par défaut
    Sur javax.imageio.ImageReader (que tu peux recuperer via ImageIO), tu peux recuperer un ImageReaderSpi, et verifier si la decompression est possible ou pas.

    Par exemple

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    Iterator<ImageReader> readers = ImageIO.getImageReadersByFormatName("JPEG");
    while (readers.hasNext()) {
      ImageReader reader = readers.next();
      ImageReaderSpi spi = reader.getOriginatingProvider();
      File file = new File("mon_image.ggg");
      FileImageInputStream stream = new FileImageInputStream(file);
      System.out.printf("   Can decode => %s : %b\n", file.getName(), spi.canDecodeInput(stream));
    }

Discussions similaires

  1. [MySQL] récupérer des images à partir d'une base de données mysql
    Par j_esti dans le forum PHP & Base de données
    Réponses: 11
    Dernier message: 21/04/2011, 13h34
  2. récupérer une image à partir table oracle
    Par ouadie99 dans le forum C#
    Réponses: 5
    Dernier message: 16/05/2008, 20h28
  3. récupérer taille format poids image stocker
    Par jarod71 dans le forum Langage
    Réponses: 1
    Dernier message: 18/03/2007, 15h35
  4. Récupérer une image à partir de SQL server
    Par programmationc dans le forum Accès aux données
    Réponses: 5
    Dernier message: 19/02/2007, 13h48
  5. [VB6] Récupérer les images à partir d'une ImageList
    Par mbzhackers dans le forum VB 6 et antérieur
    Réponses: 8
    Dernier message: 30/05/2006, 15h46

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