Individuare il colore di un determinato pixel

Da Gambas-it.org - Wikipedia.

Per individuare il colore di un determinato pixel di un'immagine si dovrà utilizzare semplicemente il seguente codice:

Public Sub Button1_Click()

 Dim im As Image
 Dim nCol As Integer 

  im = Image.Load("/percorso/del/file/immagine")

' Individueremo il pixel dell'immagine mediante le sue coordinate x ed y (che ovviamente dovranno essere specificate):
   nCol = im[x, y]

   Print "Il numero decimale del colore del pixel è: "; nCol, "&h"; Hex(nCol)

End

Verrà restituito il numero decimale del colore del pixel, determinato dalle coordinate x ed y all'interno dell'immagine.


Individuare il colore di un pixel di un'immagine cliccandoci sopra con il mouse

Mostriamo un esempio nel quale, cliccando su un'immagine inserita in una PictureBox, viene mostrato in una TextLabel il colore del pixel, nonché in console il corrispondente numero:

Private im As Image
 

Public Sub Form_Open()

 Dim pc As Picture

' Carichiamo l'immagine in una variabile di tipo "Image"...
  im = Image.Load("/percorso/del/file/immagine")

' ...e la convertiamo in una "Picture":
  pc = im.Picture

' Rendiamo la "PictureBox" delle medesime dimensioni dell'immagine caricata:
  With PictureBox1
    .W = im.W
    .H = im.H
' Quindi carichiamo l'immagine, contenuta nella variabile di tipo "Picture", nella "PictureBox":
    .Picture = pc
  End With

End


Public Sub PictureBox1_MouseDown()
 
 Dim nCol As Integer

' Individuiamo le coordinate x ed y del puntatore del mouse, quando clicchiamo nella "PictureBox" sull'immagine:
  With Mouse
     nCol = i[.X, .Y]
  End With

' Quindi otteniamo il numero del colore del pixel cliccato con il mouse...
  Print "Il numero del colore del pixel cliccato è: "; nCol, "&h"; Hex(nCol)

' ...nonché mostriamo il suo colore nella "TextLabel" posta sul Form:
  TextLabel1.Background = nCol
 
End