ARGBEX()
Syntaxe
|
Resultat.i = ARGBEX(color.l)
Procedure.l ARGBEX(color.l) ; Inverse les paramètres Red et Blue, la couche alpha est conservée ; Pour restituer la couleur lors d'un retour de fonction GDI+ r ! MOV eax, [p.v_color] ; eax = $AARRGGBB ! MOV edx, eax ! BSWAP edx ; edx = BBGGRR00 ! SHR edx, 8 ; edx = $00BBGGRR ! AND eax, $FF000000 ; eax = $AA000000 ! OR eax, edx ; eax = $AABBGGRR ! RET 4 ; pour terminer tout de suite EndProcedure
Paramètre
|
color.l
[in] Couleur à convertir au format Gdi.
Description
|
Sous Gdi+, les composantes rouge et bleue sont inversées par rapport à la convention Gdi. La procédure inverse ces composantes rouges et bleues pour obtenir le format Gdi de la couleur, la couche alpha est conservée.
La couleur modifiée est retournée.
Cette procédure peut être utilisée pour retrouver une couleur Gdi (hormis la couche alpha) à partir d'une couleur Gdi+, la couche alpha est conservée.
Résultat
de la fonction
|
La procédure retourne la couleur au format Gdi avec la couche alpha conservée.
PB
- OS
|
PureBasic v4.30 bêta 4 (Windows - x86)
Testé avec Windows Vista édition familiale Premium
Exemple
|
Les exemples suivants utilisent cette procédure :
GDIplus_1_0\HatchBrush\
GdipGetHatchForegroundColor
GDIplus_1_0\Image\GdipGetImagePalette GdipSetImagePaletteGDIplus_1_0\PathGradientBrush\GdipGetPathGradientCenterColor GdipGetPathGradientSurroundColorCount GdipGetPathGradientSurroundColorsWithCountGDIplus_1_0\Pen\GdipGetPenColorGDIplus_1_0\SolidBrush\GdipGetSolidFillColorVoici un petit exemple de la procédure. Le résultat est $2588C8AB.
couleur.l = ARGBEX($25ABC888)