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

Interfaces Graphiques en Java Discussion :

Comment charger une image de type webp ?


Sujet :

Interfaces Graphiques en Java

  1. #1
    Membre averti
    Homme Profil pro
    D�veloppeur Java
    Inscrit en
    Novembre 2022
    Messages
    49
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Essonne (�le de France)

    Informations professionnelles :
    Activit� : D�veloppeur Java

    Informations forums :
    Inscription : Novembre 2022
    Messages : 49
    Par d�faut Comment charger une image de type webp ?
    Bonjour,

    J'essaie en vain de charger une image de type webp (je n'ai aucun probl�me avec d'autres types d'images).
    Pour cela j'ai utilis� un exemple trouv� dans un forum (voir le code ci-joint).
    Peut-�tre le format webp n'est-il pas support� par le package javax.imageio.

    Peut-�tre faut-il t�l�charger un nouveau package, si oui o� le trouver. Si non y a t-il une solution ?

    Merci d'avance.

    GG
    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
    31
    32
    33
    34
    35
     
    package cinephil;
    import java.awt.image.BufferedImage;
    import java.io.File;
    import java.io.IOException;
    import javax.imageio.ImageIO;
     
    public class AfficherWebP 
    {
    	private String nom = "F:\\cinephil\\Affiches\\mon_image.webp";
    	public static void main(String[] args) throws IOException 
    	{
    		AfficherWebP AfficherWebP = new AfficherWebP();
    		AfficherWebP.readWebpImage();
    	}
     
    		private void readWebpImage() throws IOException 
    		{
    			File filein = new java.io.File(nom);
    			if (! filein.exists())
    			{
    				System.out.printf("Pas trouvé");
    				System.exit(8);
    			}
    			BufferedImage image = ImageIO.read(filein);
    			if (image==null)
    			{
    				System.out.printf("impossible de lire ce fichier");
    				System.exit(8);
    			}
    			int largeur = image.getWidth();
    			int hauteur = image.getHeight();
    	               System.out.printf("\nDimension de l'image:%dx%d", largeur, hauteur);
    	}
    }

  2. #2
    R�dacteur/Mod�rateur

    Avatar de bouye
    Homme Profil pro
    Information Technologies Specialist (Scientific Computing)
    Inscrit en
    Ao�t 2005
    Messages
    6 900
    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 900
    Billets dans le blog
    54
    Par d�faut
    Bonjour, la solution semble �tre d'utiliser une lib tierce soit en tant que plugin pour imageio, soit directement. Voir How to read WebP files in Java pour en savoir plus.
    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

  3. #3
    Membre averti
    Homme Profil pro
    D�veloppeur Java
    Inscrit en
    Novembre 2022
    Messages
    49
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Essonne (�le de France)

    Informations professionnelles :
    Activit� : D�veloppeur Java

    Informations forums :
    Inscription : Novembre 2022
    Messages : 49
    Par d�faut
    d�sol� de r�pondre si tard, mais avec les f�tes et les vacances, il y a longtemps que je ne me suis pas connect�.
    En fait, apr�s avoir explor� tous les forums sur ce sujet, j'ai pris la solution de convertir les xxxx.webp en xxxx.png, online. Ceci en utilisant un package de modules :
    libwebp-1.2.4-windows-x64 (l'�quivalent existe aussi pour OSX.)

    Si cela peut servir � d'autres d�veloppeurs, voici ma solution :

    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
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
     
    import java.io.BufferedReader;
    import java.io.InputStreamReader;
     
    public class WebPLoad  
    { 
    	private static String  delim  = System.getProperty("file.separator");
     
    	public static String  userdir = System.getProperties().getProperty("user.dir") ;
    	public static String  OS      =   System.getProperty("os.name") ;  	// On cherche sous quel système on tourne 
     
    	static String convertToPNG(String nom, String path)
    	{
    		String prog = "dwebp";
    		if (! OS.startsWith("Mac ")) prog =prog + ".exe"; // pour windows
    		if (! userdir.endsWith(delim)) prog = delim + prog ;
    		else;
    		String programme = userdir + prog;
    		if (path.endsWith(delim)) delim = "";  // le délimiteur existe déja
     
    		if (gegeutil.Gegetools.isEmpty(nom))  return null; 
    		if (gegeutil.Gegetools.isEmpty(path)) return null; 
     
    		String infile  = path + delim + nom + ".webp"; 
    		String outfile = path + delim + nom + ".png"; 
     
    		try 
    		{
    			 ProcessBuilder process = new ProcessBuilder( programme, infile, "-o", outfile ) ;
    			 Process p;
     
    			 p = process.start();
    			 final BufferedReader reader = new BufferedReader(new InputStreamReader(p.getInputStream()));
    			 String line;
    	            while ((line = reader.readLine()) != null) 
    	            {
    	                System.out.println(line);
    	            }
    			 reader.close();
    			 p.waitFor();
    			 p.destroy();
    			 java.io.File filein = new java.io.File(infile);
     
    			 filein.delete();
     
    			 return nom + ".png"; 
    		}
     
    		catch (Exception e) 
    		{
    			e.printStackTrace();
    			return null;
    		}
     
    }
     
    }

+ R�pondre � la discussion
Cette discussion est r�solue.

Discussions similaires

  1. comment charger une image � partir de vignettes ?
    Par ml1234 dans le forum Mise en page CSS
    R�ponses: 0
    Dernier message: 28/05/2009, 08h17
  2. charger une image de type gif(annim�)
    Par farid0031 dans le forum C++Builder
    R�ponses: 1
    Dernier message: 16/05/2009, 04h46
  3. Comment charger une image d'un chemin sur le disque ?
    Par faroukus dans le forum OpenCV
    R�ponses: 3
    Dernier message: 23/04/2008, 09h25
  4. comment charger une image?
    Par sandy07 dans le forum Multim�dia
    R�ponses: 1
    Dernier message: 28/05/2007, 20h54

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