C#中加载图片与读取图片上的像素点方法

这个是我在别人网上摘的!
如果发现我摘的是你的,就给我发邮件,我把它给删了![email protected]
 (1)在.NET中创建一个窗体,加入pictureBox控件。设置其Image为空,SizeMode属性设为AutoSize;
(2)加入一个button控件,用于打开图片文件;
(3)加入三个textBox控件,用于表示RGB三个颜色的值。
(4)定义一个私有变量pick为布尔值,来表示是否拾取图片上的颜色。并在Form1_Load中将其设置为false;再加入一个public Bitmap myBitmap用来进行函间的访问。
(5)为button控件增加click事件,该事件主要是完成读入文件和对pictureBox控件的初始化:
   OpenFileDialog of = new OpenFileDialog();
   of.Filter = "JPG图像(*.jpg)|*.jpg|BMP图像(*.bmp)|*.bmp|所有文件(*.*)|*.*";
   of.FilterIndex = 0;
   of.ShowDialog();
   String filename = of.FileName.ToString();

   //在此处加载一个新的图片。
   this.myBitmap = new Bitmap(filename);
   // Stretches the image to fit the pictureBox.
   pictureBox1.SizeMode = PictureBoxSizeMode.AutoSize;
   Bitmap myImage = this.myBitmap;//new Bitmap(fileToDisplay);
   //pictureBox1.ClientSize = new Size(xSize, ySize);
   pictureBox1.Image = (Image) myImage ;
   //设置当前窗体与图片大小相当
   this.ClientSize = new Size(pictureBox1.Width+20,pictureBox1.Height+60);
   pick = true;//设为TRUE可以开始读取像素点。
(6)为pictureBox控件增加mousemove事件:
   if (pick)
   {
    Color pixelColor = this.myBitmap.GetPixel(e.X,e.Y);
    //pixelColor = Color.FromArgb(255,0,0);//可以以此方法对COLOR变量进行RGB值设置。
    textBox1.Text = pixelColor.R.ToString();
    textBox2.Text = pixelColor.G.ToString();
    textBox3.Text = pixelColor.B.ToString();
   }

你可能感兴趣的:(微软之轮)