本文来告诉大家使用 GDI+ 的 Image.FromFile 加载图片文件和使用创建 Bitmap 传入图片文件有什么不同
如使用下面代码加载图片
using var image = Image.FromFile(imageFile, true);
using var bitmap = new Bitmap(image);
和使用下面代码加载图片
using var bitmap = new Bitmap(imageFile);
不同在于使用 Image.FromFile 加载图片文件,将会进入默认解码模式,拿到的 bitmap 的格式是 32 位色的,相当于如下代码
var image = bitmap.Clone(new Rectangle(0, 0, cols, rows), PixelFormat.Format32bppArgb);
而如果是从 Bitmap 创建传入图片文件,那么图片的 PixelFormat 就是图片文件自己定义的