Fonction AlphaBlend (wingdi.h)
La fonction AlphaBlend affiche des bitmaps qui ont des pixels transparents ou semi-transparents.
Syntaxe
BOOL AlphaBlend(
[in] HDC hdcDest,
[in] int xoriginDest,
[in] int yoriginDest,
[in] int wDest,
[in] int hDest,
[in] HDC hdcSrc,
[in] int xoriginSrc,
[in] int yoriginSrc,
[in] int wSrc,
[in] int hSrc,
[in] BLENDFUNCTION ftn
);
Paramètres
[in] hdcDest
Handle du contexte de l’appareil de destination.
[in] xoriginDest
Coordonnée x, en unités logiques, du coin supérieur gauche du rectangle de destination.
[in] yoriginDest
Coordonnée y, en unités logiques, du coin supérieur gauche du rectangle de destination.
[in] wDest
Largeur, en unités logiques, du rectangle de destination.
[in] hDest
Hauteur, en unités logiques, du rectangle de destination.
[in] hdcSrc
Handle du contexte de l’appareil source.
[in] xoriginSrc
Coordonnée x, en unités logiques, du coin supérieur gauche du rectangle source.
[in] yoriginSrc
Coordonnée y, en unités logiques, du coin supérieur gauche du rectangle source.
[in] wSrc
Largeur, en unités logiques, du rectangle source.
[in] hSrc
Hauteur, en unités logiques, du rectangle source.
[in] ftn
Fonction de fusion alpha pour les bitmaps source et de destination, une valeur alpha globale à appliquer à l’ensemble de l’image bitmap source et mettre en forme les informations pour la bitmap source. Les fonctions de fusion source et de destination sont actuellement limitées à AC_SRC_OVER. Consultez les structures BLENDFUNCTION et EMRALPHABLEND .
Valeur retournée
Si la fonction réussit, la valeur de retour est TRUE.
Si la fonction échoue, la valeur de retour est FALSE.
Remarques
Si le rectangle source et le rectangle de destination ne sont pas de la même taille, la bitmap source est étirée pour correspondre au rectangle de destination. Si la fonction SetStretchBltMode est utilisée, la valeur iStretchMode est automatiquement convertie en COLORONCOLOR pour cette fonction (autrement dit, BLACKONWHITE, WHITEONBLACK et HALFTONE sont remplacées en COLORONCOLOR).
Les coordonnées de destination sont transformées à l’aide de la transformation actuellement spécifiée pour le contexte de l’appareil de destination. Les coordonnées source sont transformées à l’aide de la transformation actuellement spécifiée pour le contexte de l’appareil source.
Une erreur se produit (et la fonction retourne FALSE) si le contexte d’appareil source identifie un contexte d’appareil de métafichier amélioré.
Si les bitmaps de destination et de source n’ont pas le même format de couleur, AlphaBlend convertit l’image bitmap source pour qu’elle corresponde à la bitmap de destination.
AlphaBlend ne prend pas en charge la mise en miroir. Si la largeur ou la hauteur de la source ou de la destination est négative, cet appel échoue.
Lors du rendu sur une imprimante, appelez d’abord GetDeviceCaps avec SHADEBLENDCAPS pour déterminer si l’imprimante prend en charge la fusion avec AlphaBlend. Notez que, pour un contrôleur de domaine d’affichage, toutes les opérations de fusion sont prises en charge et que ces indicateurs indiquent si les opérations sont accélérées.
Si la source et la destination sont la même surface, c’est-à-dire qu’il s’agit à la fois de l’écran ou de la même image bitmap de mémoire et que les rectangles source et de destination se chevauchent, une erreur se produit et la fonction retourne FALSE.
Le rectangle source doit se trouver entièrement dans la surface source, sinon une erreur se produit et la fonction retourne FALSE.
AlphaBlend échoue si la largeur ou la hauteur de la source ou de la destination est négative.
Le membre SourceConstantAlpha de BLENDFUNCTION spécifie une valeur de transparence alpha à utiliser sur l’ensemble de l’image bitmap source. La valeur SourceConstantAlpha est combinée avec toutes les valeurs alpha par pixel. Si SourceConstantAlpha a la valeur 0, il est supposé que l’image est transparente. Définissez la valeur SourceConstantAlpha sur 255 (ce qui indique que l’image est opaque) lorsque vous souhaitez uniquement utiliser des valeurs alpha par pixel.
Configuration requise
Client minimal pris en charge | Windows 2000 Professionnel [applications de bureau uniquement] |
Serveur minimal pris en charge | Windows 2000 Server [applications de bureau uniquement] |
Plateforme cible | Windows |
En-tête | wingdi.h (inclure Windows.h) |
Bibliothèque | Msimg32.lib |
DLL | Msimg32.dll |