位图和位图数据之间的区别

Zhr*_*aie 4 c# image

System.Drawing.bitmapSystem.Drawing.Imaging.bitmapdata#在C#之间有什么区别?
如何将它们互相转换?

Pet*_*iho 6

System.Drawing.Bitmap是一个实际的位图对象.您可以使用它来绘制使用从中获取的Graphics实例,您可以在屏幕上显示它,您可以将数据保存到文件等.

System.Drawing.Imaging.BitmapData类是调用时使用的辅助对象Bitmap.LockBits()方法.它包含有关锁定位图的信息,您可以使用它来检查位图中的像素数据.

你不能真正在两者之间"转换",因为它们不代表相同的信息.你可以得到一个BitmapData从对象Bitmap只需调用对象LockBits().如果你有一个BitmapData来自其他Bitmap对象的对象,你可以Bitmap通过分配一个与原始对象相同的格式将该数据复制到一个新对象,同时调用LockBits那个,然后只是将字节从一个复制到另一个.