Convertire il formato RGBA di un colore nei corrispondenti valori decimale ed esadecimale
Da Gambas-it.org - Wikipedia.
Versione del 25 giu 2024 alle 16:47 di Vuott (Discussione | contributi)
Per convertire il formato standard RGBA di un colore nei corrispondenti valori decimale ed esadecimale, come previsto in Gambas [nota 1], possiamo adottare il calcolo contenuto nel seguente codice:
Public Sub Main() Dim b, g, r, a As Byte Dim colore As Long ' Poniamo un valore per gli elementi dello standard RGBA: r = 100 g = 150 b = 0 a = 255 ' Nello standard RGBA il valore 255, assegnato al canale Alfa corrisponde alla piena opacità del colore, ' mentre il valore 0 corrisponde alla piena trasparenza ! ' Poiché in Gambas (contrariamente alo standard RGBA) il valore zero, assegnato al canale Alfa corrisponde alla piena opacità al colore, mentre il valore 255 corrisponde alla piena trasparenza, è necessaria la conversione del valore Alfa: a = 255 - a colore = CLong(b Or (g * CInt(2 ^ 8)) Or (r * CInt(2 ^ 16)) Or (a * CInt(2 ^ 24))) Print colore, Hex(colore, 8) End
Note
[1] ATTENZIONE ! In Gambas il colore di formato RGBA è così composto:
A R G B
e il valore del canale Alfa della piena opacità é uguale a zero, mentre il valore della piena trasparenza è 255 !