CIao a tutti,
premetto che di VB.net non capisco molto, ho dovuto usare uno script gia fatto perchè obbligato dalla mancanza di driver per vb6 (linguaggio con cui normalmente lavoro) per la perifirica che uso (una penna per firma digitale WAxxOM)
In prativa, da una immagine png a colori, passo ad una equivalente in BN togliendo anche tutti quei pixel che hanno delle tonalità di girgio.
Immaginate una scritta in grassetto nero su sfondo bianco,salvata come png, la trasformo in bmp ed alla fine di questo script,se il carattere con cui ho scxritto è ben definito, ottengo una pagina bianca, se il carattere non è ben definito, ottengo che si intravedono i bordi della scritta.
Non sono riuscito a capire il significato di questa linea
If myBitmap.GetPixel(Xcount, Ycount) = Color.FromArgb(177, 177, 177) Then
myBitmap.SetPixel(Xcount, Ycount, Color.White) 'cambia colore
Io pensavo che i numeri 177,177,177 funzionassero come in vb6 (rgb) , cioè dessero una sorta di soglia...ma non mi sembra che funzioni cosi.
Mi potete illuminare sul significato di queste righe dandomi eventualmente delle dritte su come fare a raggiungere il mio scopo?
questo è il codice che uso (scritto con vb2010xpress)
***************************************************************
Dim myBitmap As New Bitmap(sPath)
' Set each pixel in myBitmap to black.
Dim Xcount As Integer
For Xcount = 0 To myBitmap.Width - 1
Dim Ycount As Integer
For Ycount = 0 To myBitmap.Height - 1
If myBitmap.GetPixel(Xcount, Ycount) = Color.FromArgb(177, 177, 177) Then
myBitmap.SetPixel(Xcount, Ycount, Color.White) 'cambia colore
End If
Next Ycount
Next Xcount
PictureBox1.Image = myBitmap
PictureBox1.Image.Save(sPath1, System.Drawing.Imaging.ImageFormat.Bm
******************************************************************
grazie a chiunque sappia darmi una mano
Mario