RT~~~本人初学C#~~~现在用Image打开了一副PNG图怎样才能重Image中读取出图像个像素的RBGA信息呢?

解决方案 »

  1.   

    Bitmap对象中有相应的方法,不过速度很慢,BitmapData对象可以在unsafe模式下获取,比较快,不过需要指针。
      

  2.   


    使用Bitmap对象能读取PNG图吗?
      

  3.   

    用 image 的 ToBitmap() 方法得到Bitmap,然后用两个for 嵌套循环读取里面的pixels,里面还有一个方法叫做 ToRBGA 方法,或者类似的名字,你用CTRL+J去看。别忘了最后要对Bitmap进行Dispose
      

  4.   


    …………找不到这个函数~~~Icon里面才有 - =
      

  5.   

      如何获取图像象素属性(不用生成图像对象)目前获取图像象素方法如下:   
        
      Image   img   =   new   Bitmap(FFullName);   
      FPixelW   =   img.Width;   
      FPixelH   =   img.Height;   
        
      获取图像文件其他属性方法如下:   
        
        FileInfo   fi   =   new   FileInfo(FFullName);   
        FSize   =   fi.Length/1024;   
        FDate   =   fi.LastWriteTime.ToString();   
        FName   =   fi.Name;   
        
    引用Microsoft   Shell   Controls   and   Automation(在com里)   
      //   
      using   Shell32;   
      //   
      string   sFile=@"c:\\test1.bmp";   
      ShellClass   sh   =   new   ShellClass();   
      Folder   dir   =   sh.NameSpace(   Path.GetDirectoryName(sFile)   );   
      FolderItem   item   =   dir.ParseName(   Path.GetFileName(   sFile   )   );     
      string   det   =   dir.GetDetailsOf(   item,   i   );   
      //i   说明   
      0   :文件名       text1.bmp   
      1   :   大小           141KB   
      2   :类型           bmp文件   
      3   :修改时间   
      4   :创建时间   
      5   :访问时间   
      26:分辨率       1461x855   
      27:水平像素   1461像素     
      27:垂直像素   855像素   
      //要取哪个自己写吧   
          
      我获取的   26、27、28是空的   
      你在哪里看的,我在   
      http://www.codeproject.com/cs/files/detailedfileinfo.asp   
      看到的
      

  6.   


    你的是WPF下的IMAGE还是WINFORM下的IMAGE?或者说,请把IMAGE的命名空间说出来,IMAGE在C#里有两个。
      

  7.   

    Bitmap.GetPixel 方法  returnValue = instance.GetPixel(x, y)public Color GetPixel (
    int x,
    int y
    )
     
    可以获取指定坐标的颜色值
      

  8.   


    System.Drawing.Image 这个Image
      

  9.   


    这个System.Drawing下的Bitmap类有一个构造函数的重载:public Bitmap(
    Image original
    )用这个来得到你想要的Bitmap
      

  10.   

    而这个Bitmap有一个GetPixel方法,用于取得指定坐标的像素点,返回是一个Color对像,用这个Color对像,你想要什么RGBA啦,什么RGB32啦什么的……就随你了。