Funzione AlphaBlend (wingdi.h)
La funzione AlphaBlend visualizza le bitmap con pixel trasparenti o semitraparenti.
Sintassi
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
);
Parametri
[in] hdcDest
Handle al contesto del dispositivo di destinazione.
[in] xoriginDest
Coordinata x, in unità logiche, dell'angolo superiore sinistro del rettangolo di destinazione.
[in] yoriginDest
Coordinata y, in unità logiche, dell'angolo superiore sinistro del rettangolo di destinazione.
[in] wDest
Larghezza, in unità logiche, del rettangolo di destinazione.
[in] hDest
Altezza, in unità logiche, del rettangolo di destinazione.
[in] hdcSrc
Handle nel contesto del dispositivo di origine.
[in] xoriginSrc
Coordinata x, in unità logiche, dell'angolo superiore sinistro del rettangolo di origine.
[in] yoriginSrc
Coordinata y, in unità logiche, dell'angolo superiore sinistro del rettangolo di origine.
[in] wSrc
Larghezza, in unità logiche, del rettangolo di origine.
[in] hSrc
Altezza, in unità logiche, del rettangolo di origine.
[in] ftn
Funzione di fusione alfa per le bitmap di origine e di destinazione, un valore alfa globale da applicare all'intera bitmap di origine e alle informazioni di formato per la bitmap di origine. Le funzioni blend di origine e destinazione sono attualmente limitate alla AC_SRC_OVER. Vedere le strutture BLENDFUNCTION e EMRALPHABLEND .
Valore restituito
Se la funzione ha esito positivo, il valore restituito è TRUE.
Se la funzione ha esito negativo, il valore restituito è FALSE.
Commenti
Se il rettangolo di origine e il rettangolo di destinazione non sono le stesse dimensioni, la bitmap di origine viene estesa per corrispondere al rettangolo di destinazione. Se viene usata la funzione SetStretchBltMode , il valore iStretchMode viene convertito automaticamente in COLORONCOLOR per questa funzione, ovvero BLACKONWHITE, WHITEONBLACK e HALFTONE vengono modificati in COLORONCOLOR.
Le coordinate di destinazione vengono trasformate usando la trasformazione attualmente specificata per il contesto del dispositivo di destinazione. Le coordinate di origine vengono trasformate usando la trasformazione attualmente specificata per il contesto del dispositivo di origine.
Si verifica un errore (e la funzione restituisce FALSE) se il contesto del dispositivo di origine identifica un contesto di dispositivo metafile avanzato.
Se le bitmap di destinazione e di origine non hanno lo stesso formato di colore, AlphaBlend converte la bitmap di origine in modo che corrisponda alla bitmap di destinazione.
AlphaBlend non supporta il mirroring. Se la larghezza o l'altezza dell'origine o della destinazione è negativa, questa chiamata avrà esito negativo.
Quando si esegue il rendering in una stampante, chiamare innanzitutto GetDeviceCaps con SHADEBLENDCAPS per determinare se la stampante supporta la fusione con AlphaBlend. Si noti che, per un controller di dominio di visualizzazione, tutte le operazioni di fusione sono supportate e questi flag rappresentano se le operazioni sono accelerate.
Se l'origine e la destinazione sono la stessa superficie, ovvero lo schermo o la stessa bitmap di memoria e i rettangoli di origine e di destinazione si sovrappongono, si verifica un errore e la funzione restituisce FALSE.
Il rettangolo di origine deve trovarsi completamente all'interno dell'area di origine, altrimenti si verifica un errore e la funzione restituisce FALSE.
AlfaBlend ha esito negativo se la larghezza o l'altezza dell'origine o della destinazione è negativa.
Il membro SourceConstantAlpha di BLENDFUNCTION specifica un valore di trasparenza alfa da utilizzare nell'intera bitmap di origine. Il valore SourceConstantAlpha viene combinato con qualsiasi valore alfa per pixel. Se SourceConstantAlpha è 0, si presuppone che l'immagine sia trasparente. Impostare il valore SourceConstantAlpha su 255 (che indica che l'immagine è opaca) quando si vogliono usare solo valori alfa per pixel.
Requisiti
Client minimo supportato | Windows 2000 Professional [solo app desktop] |
Server minimo supportato | Windows 2000 Server [solo app desktop] |
Piattaforma di destinazione | Windows |
Intestazione | wingdi.h (include Windows.h) |
Libreria | Msimg32.lib |
DLL | Msimg32.dll |