Partager via


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

Voir aussi

BLENDFUNCTION

Fonctions bitmap

Vue d’ensemble des bitmaps

EMRALPHABLEND

GetDeviceCaps

SetStretchBltMode