ho realizzato questa funzione che mi torna il colore di un determinato pixel dello schermo...
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.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; }

Rispondi quotando