在.Net 2.0中读取PNG图像文件

时间:2008-09-19 07:28:28

标签: c# .net

我在.Net 2.0中使用C#,我想读取PNG图像文件并检查第一行和第一列是否具有非透明像素。

我应该使用哪种装配和/或类?

3 个答案:

答案 0 :(得分:22)

System.Drawing.dll程序集中的

Bitmap类:

Bitmap bitmap = new Bitmap(@"C:\image.png");
Color clr = bitmap.GetPixel(0, 0);

答案 1 :(得分:1)

好吧,Bitmap类可以读取PNG文件并访问像素。可以看到透明像素吗? PNG支持透明度,而BMP则不支持透明度。但它仍然有效。

Bitmap bitmap = new Bitmap("icn_loading_animated3a.png");
pictureBox1.Image = bitmap;
Color pixel5by10 = bitmap.GetPixel(5, 10);

上面的代码读取我的小图片,然后读取透明像素。颜色类具有RGBA值,并且我读取的像素被识别为透明。

答案 2 :(得分:0)

当然我已经googled并找到了PngBitmapDecoder类,但它似乎在.Net 2.0中不可用?

http://msdn.microsoft.com/en-us/library/system.windows.media.imaging.pngbitmapdecoder.aspx

上面的链接提到它在PresentationCore程序集中,我似乎没有包含.Net 2.0