<span style="font-size: 24px; "> </span><span style="font-size:18px;">进来初学C#,为了让记忆更深刻一点,避免日后需要用时反复做同样的工作,决定把现在查到的一些资料,和自己的一些理解记录下来。</span>
使用C#读图并不困难。Image类中提供了FromFile()函数,可以直接把指定了路径与文件名的图片载入到Image类的各种派生类中;FromFile函数在MSDN中的声明如下:
C#自身提供了Picture Box控件,新建工程选择Windows应用程序,命名为Picture_Viewer,首先在添加控件OpenFileDialog,命名为ofdSelectPicture,然后添加Picture Box,命名为picShowPicture,同时添加button按钮,命名为btnSelectPicture。效果如下:
直接双击button按钮,进入代码段编辑如下代码:
<span style="white-space:pre"> </span>if (ofdSelectPicture.ShowDialog()==DialogResult.OK)
{
picShowPicture.Image = Image.FromFile(ofdSelectPicture.FileName);
this.Text = string.Concat("Picture View(" + ofdSelectPicture.FileName + ")");
}
效果展示:
对于码农来讲,更重要的应该是对于Image类应该如何使用,对像素值的访问和操作。于是查看MSDN发现:
Image类只提供了 GetType ,ToString 等方法,以及Height ,Width等属性,并未提供对数据成员的操作的方法。但是在Image 的派生类Bitmap类中,GetPixel 和 SetPixel等方法,可以方便的对图像的像素值进行操作。以SetPixel在MSDN中的声明为例:
x和y分表表示像素点的行列坐标,color为要设置的像素值的颜色值。实例如下:
<span style="white-space:pre"> </span>public static bool GetR