Uso della classe ColorInfo

Da Gambas-it.org - Wikipedia.

La Classe ColorInfo restituisce informazioni dettagliate sui colori.

In particolare seziona un colore nei suoi componenti, e li ritorna come un oggetto di ColorInfo.

La Classe ColorInfo non è creabile.


Esempio:

Public Sub Form_Open()

 Dim ci As ColorInfo
  
  With ci = Color[Color.Violet]
    Print .Red
    Print .Green
    Print .Blue
    Print .Alpha
    Print Hex(.Color, 6)
    Print .Hue
    Print .Saturation
    Print .Value   ' Questo si riferisce al valore del componente "V" della rappresentazione HSV del colore
    Print .Luminance
  End With

End


Ovviamente è possibile anche "impostare" le proprietà della Classe ColorInfo:

Public Sub Form_Open()

 Dim ci As ColorInfo
 
  With ci = Color[Color.Violet]
    .Red = 255
    .Blue = 0
    Print Hex(.Color, 6)   ' ...e così il pixel è diventato di colore rosso
  End With

End


In questo esempio pratico abbiamo una immagine formata da un solo pixel di colore blu. Cambieremo il colore in celeste.

Public Sub Form_Open()

 Dim im As Image
 Dim ci As ColorInfo

  im = Image.Load("/percorso/dell'immagine")

  With ci = Color[im.Pixels[0]]
    Print Hex(.Color, 6)
' Viene modificato un componente del colore del pixel:
   .Green = 255
' E' possibile anche impostare l'intero numero del colore del pixel:
   .Color = &00FFFF
  End With
 
  im.Colorize(ci.Color)

  PictureBox1.Picture = im.Picture

End