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

Windows Forms Discussion :

Convertir des System.Drawing.Bitmap en System.Drawing.Icon


Sujet :

Windows Forms

  1. #1
    Membre expérimenté Avatar de ctxnop
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Juillet 2007
    Messages
    858
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France, Morbihan (Bretagne)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juillet 2007
    Messages : 858
    Points : 1 732
    Points
    1 732
    Par défaut Convertir des System.Drawing.Bitmap en System.Drawing.Icon
    Bonjour,
    comme le titre le laisse pensé, je cherche à convertir des objets Bitmap en objet Icon.
    La raison est simple, j'ai un gestionnaire de ressource qui gère tout plein d'icones au format PNG (chacune des images existe en plusieures tailles : 16x16, 24x24, 32x32, 48x48 et 64x64).
    99% des contrôles qui affichent ces images demandent des objets System.Drawing.Image. Donc des Bitmap ca passe tout seul, seulement voilà, certains demandent des System.Drawing.Icon.
    Évidement, j'ai déjà cherché un minimum et j'ai trouvé une solution :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    System.Drawing.Bitmap b = new System.Drawing.Bitmap(@"c:\images\icone_16.png");
    System.Drawing.Icon i = System.Drawing.Icon.FromHandle(b.GetHicon());
    Ca marche, ok, sauf que l'icone résultante est juste immonde. Ca ressemble a peine à l'image d'origine. De plus, les formats Icon peuvent normalement inclure plusieures tailles au sein du même objet, et cette méthode ne permet pas d'ajouter au sein du même objet Icon toutes les tailles de l'image d'origine.

    Une idée de comment je pourrai régler ces deux problèmes ?

  2. #2
    Expert éminent
    Avatar de smyley
    Profil pro
    Inscrit en
    Juin 2003
    Messages
    6 270
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 6 270
    Points : 8 344
    Points
    8 344
    Par défaut
    Il n'y a pas de moyen simple de convertir une image en png avec GDI+ (.NET mais aussi le reste donc). Par contre ces ressources peuvent t'apporter une solution :
    http://freeimage.sourceforge.net/ : lib de conversion d'images
    http://www.codeproject.com/KB/GDI-plus/safeicon.aspx

Discussions similaires

  1. [WPF] WriteableBitmap & System.Drawing.Bitmap
    Par NeoKript dans le forum Windows Presentation Foundation
    Réponses: 6
    Dernier message: 20/11/2011, 06h00
  2. Bitmap pixel System.Drawing
    Par playmobil-62 dans le forum C#
    Réponses: 3
    Dernier message: 06/10/2011, 13h17
  3. Réponses: 10
    Dernier message: 17/09/2010, 15h02
  4. Calcul des stats sur SYS et SYSTEM
    Par orafrance dans le forum Oracle
    Réponses: 8
    Dernier message: 05/10/2005, 16h25
  5. Réponses: 13
    Dernier message: 20/03/2003, 08h11

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