RGBA()
Syntaxe
Resultat = RGBA(Rouge, Vert, Bleu, Alpha)Description
Renvoie la valeur de la couleur 32 bits correspondant aux valeurs Rouge, Verte, Bleue et Alpha.
Arguments
Rouge, Vert, Bleu La valeur des composantes rouge, verte et bleue de la couleur.
Chaque valeur doit être comprise entre 0 et 255.Alpha La composante alpha (transparence) de la couleur.
La valeur doit être comprise entre 0 et 255.
Une valeur de 0 signifie une transparence complète et une valeur de 255 signifie une opacité totale.
Valeur de retour
Renvoie la valeur de la couleur.
Remarques
Resultat varie de 0 à 4 294 967 295 teintes. Il est donc conseillé d'utiliser un 'quad', (Resultat.q) et de mettre à zéro les octets inutilisés. En effet, sur un système d'exploitation 32 Bits, Resultat est un integer de type Long (par défaut) dont la plage d'utilisation va de - 2 147 483 648 à + 2 147 483 647, alors comparer deux couleurs est hasardeux.
Utiliser les commandes suivantes Red(), Green(), Blue() et Alpha() pour extraire la valeur d'une des composantes 'Rouge', 'Verte', 'Bleue' ou 'Alpha'.
Un tableau représentant les couleurs les plus communes est disponible ici. Ces fonctions sont utiles lors des opérations de dessin 2D.
Exemple
Couleur.q = RGBA(255, 255, 255, 255) ; Blanc totalement opaque Debug LSet(Hex(Couleur, #PB_Quad), 16, "0") Couleur = Couleur & $FFFFFFFF ; mise à zéro des octets inutilisés, ; utile pour la comparaison de couleur Debug LSet(Hex(Couleur, #PB_Quad), 16, "0")
Exemple
Debug RGBA(0, 0, 0, 0) ; Noir totalement transparent Debug RGBA(0, 0, 0, 128) ; Noir à moitié transparent Debug RGBA(0, 0, 0, 255) ; Noir totalement opaque Debug RGBA(255, 0, 0, 255) ; Rouge totalement opaque Debug RGBA(0, 0, 255, 0) ; Bleu totalement transparent Debug RGBA(255, 255, 255, 255) ; Blanc totalement opaque Debug HEX(RGBA(255, 255, 255, 255)) ; Affiche FFFFFFFFFFFFFFFF
Exemple: Couleur 24 bits vers couleur 32 bits
Alpha = 255 ; de 0 à 255, 255 = aucune transparence (Opacité = 100 %) ; Pour les couleurs, il est conseillé d'utiliser des variables de type Quad (Voir remarques) Couleur24.q = ColorRequester() Couleur32.q = RGBA(Red(Couleur24), Green(Couleur24), Blue(Couleur24), alpha) Couleur32 = Couleur32 & $FFFFFFFF ; Mise à zéro des octets inutilisés ; Il est aussi possible de remplacer les deux lignes ci-dessus par: ; Couleur32 = Couleur24 | Alpha << 24 Debug "Rouge " + Red(Couleur32) Debug "Vert " + Green(Couleur32) Debug "Bleu " + Blue(Couleur32) Debug "Opacité " + Alpha(Couleur32)
Voir aussi
Red(), Green(), Blue(), Alpha(), RGB()
OS Supportés
Tous