iT邦幫忙

0

C#如何取得畫面上某一點的顏色

c#

如果我用滑鼠點在畫面上的某一處如何取得該點座標及顏色,請大大賜教!!

1 個回答

12
player
iT邦大師 1 級 ‧ 2012-10-09 16:37:03
最佳解答

C#用 Bitmap的GetPixel
去取像點的顏色
http://msdn.microsoft.com/zh-tw/library/system.drawing.bitmap.getpixel.aspx

但是
畫面無法直接轉成Bitmap
所以要透過Graphics的CopyFromScreen先去抓圖
http://msdn.microsoft.com/zh-tw/library/6yfzc507.aspx

//大概這樣? 沒試過, 你自己試
public Color GetPixelFromScreen(int x, int y)
{
int width = 1;
int height = 1;
Bitmap img = new Bitmap(width, height, PixelFormat.Format24bppRgb);
using (Graphics g = Graphics.FromImage(img))
{
g.CopyFromScreen(
new Point(x, y),
new Point(0, 0),
new Size(width, height));
}
return img.GetPixel(0,0);
}

我要發表回答

立即登入回答