C#中,Image与Bitmap的区别?1、C#中,Image为源自 Bitmap 和 Metafile 的类提供功能的抽象基类,也就是不能使用Image myImage=new Image();创建对象
介是为什么可以使用Image myImage=Image.FromFile(fileName);创建对象?2、C#中,Image与Bitmap的区别?下面的解释对吗?
使用Image可以操作各种支持的图片,如GIF, BMP, JPG
而Bitmap仅仅支持 BMP

解决方案 »

  1.   

    我最最近就在做这方面的东西,个人以为,Bitmap!=BMP,
    Bmp,Jpg,Gif...都是图片文件只是存储格式不同,
    但对图象进行操作时都是对每个像素点的RGB值修改编辑此乃BITMAP!
      

  2.   

    1. Image.FromFile()返回的是某个继承自Image的具体类的对象,在这里,就是Bitmap或者Metafile其中之一。这应该算是factory pattern的一种形式。所以,Image类确实不能直接创建对象的,但这里Image.FromFile()返回的是Bitmap或者Metafile的对象。2. Bitmap不仅仅对应于bmp,其实只要是像素式的图片格式(矢量格式不行),理论上都可以用Bitmap,就像YJPC789(雪地里的一颗星) 所说的。Image所抽象的是Bitmap和Metafile两个子类,你可以看一下msdn里的介绍。
      

  3.   

    为什么可以使用Image myImage=Image.FromFile(fileName);创建对象?---------------------------------------------------
    FormFile 是myImage的静态方法,创建IMAGE对象~~ 我的理解是这样的。
      

  4.   

    看书啊!书上都有我看过有本叫GDI+程序设计的书 里面全是这个
      

  5.   

    Image.FromFile() IS STATIC METHOD ,TYPE DON'T NEED INSTANCED.
      

  6.   

    1. Image.FromFile()返回的是某个继承自Image的具体类的对象,在这里,就是Bitmap或者Metafile其中之一。这应该算是factory pattern的一种形式。所以,Image类确实不能直接创建对象的,但这里Image.FromFile()返回的是Bitmap或者Metafile的对象。2. Bitmap不仅仅对应于bmp,其实只要是像素式的图片格式(矢量格式不行),理论上都可以用Bitmap,就像YJPC789(雪地里的一颗星) 所说的。Image所抽象的是Bitmap和Metafile两个子类,你可以看一下msdn里的介绍。
    ---------------------------------------------------------
    agree