[quote=引用 9 楼 sp1234 的回复:] Image.FromFile(....) 可以读取 WMF、EMF 文件,产生的并不是位图。你测试是读取的是位图,那是你选择的测试数据文件有局限性。
Image.FromFile(....) 可以读取 WMF、EMF 文件,产生的并不是位图。你测试是读取的是位图,那是你选择的测试数据文件有局限性。
一个对象可以有许多种类型,声明变量时只要是兼容于对象实例的类型,都是可以通过编译的。所以声明变量的类型可以不是实例化时的类型。 但是,一般来说,编程时都会声明为变量为一个尽可能具体的、准确的类型,而不是对象的多种类型中抽象的那个。 Image.FromFile(...) 即可能返回 Bitmap,也可能返回 Metafile,是两种完全不一样的对象。但是这两中对象都是 Image,所以声明变量为 Image 类型。
http://referencesource.microsoft.com/#System.Drawing/commonui/System/Drawing/Image.cs,cd75f3ae060b69f3
实际返回的是Image子类,debug模式你可以看它到底是什么
110,536
社区成员
642,578
社区内容
加载中
让您成为最强悍的C#开发者
试试用AI创作助手写篇文章吧