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 :

Transparence de deux images


Sujet :

C++Builder

Vue hybride

Message pr�c�dent Message pr�c�dent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    D�veloppeur informatique
    Inscrit en
    Mai 2002
    Messages
    37
    D�tails du profil
    Informations personnelles :
    Localisation : France, Gironde (Aquitaine)

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

    Informations forums :
    Inscription : Mai 2002
    Messages : 37
    Par d�faut Transparence d'image
    Bonjour,

    Je voudrais savoir comment faire pour gerer le transparance de deux images dans un canvas.

    Si quelqu'un � une id�e

    Merci

  2. #2
    Expert confirm�

    Avatar de pottiez
    Homme Profil pro
    D�veloppeur C++
    Inscrit en
    Novembre 2005
    Messages
    7 152
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    �ge : 40
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activit� : D�veloppeur C++
    Secteur : Industrie

    Informations forums :
    Inscription : Novembre 2005
    Messages : 7 152
    Par d�faut
    Si tu utilise un composant TImage, il y a la propri�t� Transparent � mettre � true

  3. #3
    Membre averti
    Profil pro
    D�veloppeur informatique
    Inscrit en
    Mai 2002
    Messages
    37
    D�tails du profil
    Informations personnelles :
    Localisation : France, Gironde (Aquitaine)

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

    Informations forums :
    Inscription : Mai 2002
    Messages : 37
    Par d�faut
    Non en fait je me suis mal exprimer, car la propi�t� Transparent c'est pas pour la meme chose (je maitrise un peu quand m�me ).

    Je copie dans le canvas du TImage une image :
    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    Image1->Canvas->Draw(0,0,l_origine);
    Sauf que l� je veux que cette image soit l�g�rement transparante, donc en fait j'ai trouv� je pense ce que je veux mais j'arrive pas � le compiler. j'ai remplacer le bout de code plus haut par cette fonction :
    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    void DrawAlphaBlend (int alpha, HDC hdcDest, TRect rectDest, HDC hdcSrc, TRect rectSrc)
        {
        BLENDFUNCTION bf;
     
        memset(&bf,0,sizeof(bf));
        bf.BlendOp = AC_SRC_OVER;
        bf.SourceConstantAlpha = alpha;
        bf.SourceConstantAlpha = 128;   // Test
     
        AlphaBlend(hdcDest,0,0,rectDest.Width(),rectDest.Height(),
                   hdcSrc ,0,0,rectSrc .Width(),rectSrc .Height(),bf);
        }
    Ca compile pas parce que le likeur n'arrive pas � faire la r�f�rence externe.

    Avez-vous une id�e ?

    Merci

  4. #4
    Membre �prouv�
    Avatar de Sunchaser
    Homme Profil pro
    OPNI (Objet Programmant Non Identifi�)
    Inscrit en
    D�cembre 2004
    Messages
    2 059
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    �ge : 54
    Localisation : France, Manche (Basse Normandie)

    Informations professionnelles :
    Activit� : OPNI (Objet Programmant Non Identifi�)
    Secteur : Industrie Pharmaceutique

    Informations forums :
    Inscription : D�cembre 2004
    Messages : 2 059
    Par d�faut
    Bonjour,

    Perso, je viens d'essayer de compiler cette partie de code :
    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
     
    void DrawAlphaBlend (int alpha, HDC hdcDest, TRect rectDest, HDC hdcSrc, TRect rectSrc)
        {
        BLENDFUNCTION bf;
     
        memset(&bf,0,sizeof(bf));
        bf.BlendOp = AC_SRC_OVER;
        bf.SourceConstantAlpha = alpha;
        bf.SourceConstantAlpha = 128;   // Test
     
        AlphaBlend(hdcDest,0,0,rectDest.Width(),rectDest.Height(),
                   hdcSrc ,0,0,rectSrc .Width(),rectSrc .Height(),bf);
        }
    et...ben il dis rien ...
    J'avais mis en private dans le .h:
    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
     
    void DrawAlphaBlend (int alpha, HDC hdcDest, TRect rectDest, HDC hdcSrc, TRect rectSrc);
    aucun message d'erreur a la compilation...

  5. #5
    Membre averti
    Profil pro
    D�veloppeur informatique
    Inscrit en
    Mai 2002
    Messages
    37
    D�tails du profil
    Informations personnelles :
    Localisation : France, Gironde (Aquitaine)

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

    Informations forums :
    Inscription : Mai 2002
    Messages : 37
    Par d�faut
    Comprends Pas
    Moi le linkeur peut pas faire le link sur la fonction AlphaBlend

    Vous avez fait une appli avec une form et tout le tral�l� ???

  6. #6
    Membre �prouv�
    Avatar de Sunchaser
    Homme Profil pro
    OPNI (Objet Programmant Non Identifi�)
    Inscrit en
    D�cembre 2004
    Messages
    2 059
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    �ge : 54
    Localisation : France, Manche (Basse Normandie)

    Informations professionnelles :
    Activit� : OPNI (Objet Programmant Non Identifi�)
    Secteur : Industrie Pharmaceutique

    Informations forums :
    Inscription : D�cembre 2004
    Messages : 2 059
    Par d�faut
    Oui, oui...je pensais m�me devoir pr�ciser qq chose comme #include <Wingdi.h>, en rapport a BLENDFUNCTION, mais m�me pas besoin ...

  7. #7
    Membre averti
    Profil pro
    D�veloppeur informatique
    Inscrit en
    Mai 2002
    Messages
    37
    D�tails du profil
    Informations personnelles :
    Localisation : France, Gironde (Aquitaine)

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

    Informations forums :
    Inscription : Mai 2002
    Messages : 37
    Par d�faut
    Ma fonction ne fait pas partie de la class de la fiche car autrement AlphaBlend se confond avec la propri�t� AlphaBlend de la class TCustomForm

  8. #8
    CGi
    CGi est d�connect�
    Expert confirm�
    Avatar de CGi
    Profil pro
    Inscrit en
    Mars 2002
    Messages
    1 061
    D�tails du profil
    Informations personnelles :
    Localisation : France, Allier (Auvergne)

    Informations forums :
    Inscription : Mars 2002
    Messages : 1 061
    Par d�faut
    Chez moi aussi �a compile sans erreur.

    Ca compile pas parce que le likeur n'arrive pas � faire la r�f�rence externe.
    C'est la fonction AlphaBlend qu'il ne trouve pas ?
    Site : http://chgi.developpez.com

    Pourquoi faire simple quand on peut faire compliqu� ? (Jacques Rouxel)

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

Discussions similaires

  1. superposition de deux images avec transparence
    Par ol9245 dans le forum MATLAB
    R�ponses: 3
    Dernier message: 27/10/2014, 10h45
  2. Fusionner deux images avec transparence
    Par xander412 dans le forum C#
    R�ponses: 4
    Dernier message: 23/07/2009, 15h39
  3. R�ponses: 2
    Dernier message: 24/01/2008, 18h26
  4. "Merger" deux images avec une couleur de transparence
    Par MaelstroeM dans le forum VB.NET
    R�ponses: 7
    Dernier message: 14/09/2007, 09h34
  5. d�grad� transparent sur une image
    Par Dionyzos dans le forum G�n�ral JavaScript
    R�ponses: 6
    Dernier message: 25/04/2005, 15h47

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