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

C++Builder Discussion :

[BCB6] Creation icone probleme de transparence


Sujet :

C++Builder

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre chevronné Avatar de winow
    Inscrit en
    Novembre 2004
    Messages
    669
    Détails du profil
    Informations personnelles :
    Âge : 60

    Informations forums :
    Inscription : Novembre 2004
    Messages : 669
    Par défaut [BCB6] Creation icone probleme de transparence
    Bonjour

    A partir d'une image (.bmp) chargé dans un TImage
    j'aimerais enregistrer l'image du TImage en fichier icone (.ico).

    j'ai rechercher plusieurs solution mais j'y arrive pas.
    Aucune information précises sur le net a ce sujet.

    a part peut être ( CreateIconIndirect ou HICON etc..) mais comment faire ?

    Merci et A+

  2. #2
    Membre éclairé Avatar de SmileSoft
    Inscrit en
    Mars 2008
    Messages
    436
    Détails du profil
    Informations forums :
    Inscription : Mars 2008
    Messages : 436
    Par défaut
    salut,
    Citation Envoyé par winow Voir le message

    A partir d'une image (.bmp) chargé dans un TImage
    j'aimerais enregistrer l'image du TImage en fichier icone (.ico).
    voilà un code permettant au d'enregistrer une image bmp dans un fichier ico au chargement:


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    Image1->Stretch=true; /*pour que l'image chargée ait la même taille et la même forme que le contrôle image.*/
     if(OpenPictureDialog1->Execute())
     Image1->Picture->Bitmap->LoadFromFile(OpenPictureDialog1->FileName);
     SavePictureDialog1->DefaultExt ="ICO"; /* mettre .ico l'extension par défaut du SavePictureDialog1*/
     
     Image1->Picture->Bitmap->SaveToFile("c:\\f.ico");

  3. #3
    Membre chevronné Avatar de winow
    Inscrit en
    Novembre 2004
    Messages
    669
    Détails du profil
    Informations personnelles :
    Âge : 60

    Informations forums :
    Inscription : Novembre 2004
    Messages : 669
    Par défaut
    Merci SmileSoft

    ça marche mais ce code ne gère pas la transparence de l'icône une fois crée.
    l'icône crée a un contour noir.

  4. #4
    Membre éclairé Avatar de SmileSoft
    Inscrit en
    Mars 2008
    Messages
    436
    Détails du profil
    Informations forums :
    Inscription : Mars 2008
    Messages : 436
    Par défaut
    Citation Envoyé par winow Voir le message
    ça marche mais ce code ne gère pas la transparence de l'icône une fois crée.
    l'icône crée a un contour noir.
    peux tu nous montrer le résultat sur un exemple?

    une solution peut être est de redimensionner (diminuer la taille) de l'icône après création, généralement les icônes prennent de petites tailles.

  5. #5
    Membre chevronné Avatar de winow
    Inscrit en
    Novembre 2004
    Messages
    669
    Détails du profil
    Informations personnelles :
    Âge : 60

    Informations forums :
    Inscription : Novembre 2004
    Messages : 669
    Par défaut
    En fait, j'ai un bouton qui charge un bitmap dans le TImage et un autre pour l'enregistrer en .ico

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
     
    //pour enregistrer par defaut
    Image1->DefaultExt = GraphicExtension(__classid(Graphics::TIcon));
    Image1->Filter = GraphicFilter(__classid(Graphics::TIcon));
    // fin par defaut
     
     if(OpenDialog1->Execute())
       {
       //la il doit manquer du code
       Image1->Picture->Graphic->SaveToFile(OpenDialog1->FileName);
     }
    Une image explicative : http://xs.to/xs.php?h=xs135&d=09024&...devpcom587.jpg

  6. #6
    Membre éclairé Avatar de SmileSoft
    Inscrit en
    Mars 2008
    Messages
    436
    Détails du profil
    Informations forums :
    Inscription : Mars 2008
    Messages : 436
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
     
     if(OpenDialog1->Execute())
       {
       //la il doit manquer du code
       Image1->Picture->Graphic->SaveToFile(OpenDialog1->FileName);
     }
    pour quoi tu n'utilises pas (OpenPictureDialog1 et SavePictureDialog1)? le code dont je t'ai passé marche bien chez moi et ne donne pas un fond noir.

Discussions similaires

  1. Probleme de transparance sur les sprites
    Par drcd dans le forum OpenGL
    Réponses: 2
    Dernier message: 02/05/2006, 20h31
  2. [FLASH MX2004] Probleme de transparence
    Par Sorento dans le forum Flash
    Réponses: 2
    Dernier message: 15/06/2005, 09h21
  3. Probleme de transparence ... rho encore :/
    Par Clad3 dans le forum OpenGL
    Réponses: 28
    Dernier message: 13/01/2005, 13h17
  4. probleme de transparence avec fog
    Par Daedar dans le forum OpenGL
    Réponses: 10
    Dernier message: 03/05/2004, 08h14
  5. Probleme de transparance
    Par billyboy dans le forum DirectX
    Réponses: 1
    Dernier message: 12/02/2004, 19h40

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