ho realizzato questa funzione che mi torna il colore di un determinato pixel dello schermo...
codice:
private Color ColorePixel(int x, int y)
{
Bitmap screenPixel = new Bitmap(1, 1, PixelFormat.Format32bppRgb);
using (Graphics gdest = Graphics.FromImage(screenPixel))
{
using (Graphics gsrc = Graphics.FromHwnd(IntPtr.Zero))
{
IntPtr hSrcDC = gsrc.GetHdc();
IntPtr hDC = gdest.GetHdc();
int retval = BitBlt(hDC, 0, 0, 1, 1, hSrcDC, x, y,
(int)CopyPixelOperation.SourceCopy);
gdest.ReleaseHdc();
gsrc.ReleaseHdc();
}
}
Color c = screenPixel.GetPixel(0, 0);
return c;
}
Quello che vorrei fare è "arrotondare" il colore, ovvero, se il colore letto è rosso chiaro o rosso scuro, la funzione mi ritorna il colore rosso e viceversa per gli altri colori. Come faccio? Grazie.