C# 位图.LockBits中ImageLockMode的用途

C# 位图.LockBits中ImageLockMode的用途,c#,bitmap,lockbits,C#,Bitmap,Lockbits,我在C#工作,我有一个关于Bitmap.LockBits方法的问题。 假设我有一个名为myBitmap的位图,并在此位图上使用锁位: BitmapData bmpData = myBitmap.LockBits(new Rectangle(0, 0, myBitmap.Width, myBitmap.Height), ImageLockMode.ReadOnly, PixelFormat.Format8bppIndexed); 在我有限的理解中,bmpData.Scan0是指向图像数据的指针,

我在C#工作,我有一个关于Bitmap.LockBits方法的问题。 假设我有一个名为myBitmap的位图,并在此位图上使用锁位:

BitmapData bmpData = myBitmap.LockBits(new Rectangle(0, 0, myBitmap.Width, myBitmap.Height), ImageLockMode.ReadOnly, PixelFormat.Format8bppIndexed);
在我有限的理解中,bmpData.Scan0是指向图像数据的指针,但这是“实际图像数据”还是某种副本(仅使用指定矩形中的数据)?我询问的原因是我无法理解ImageLockMode枚举的用途。在我看来,如果我有Scan0指针,我就可以随意摆弄并对图像数据执行各种读/写操作(例如使用Marshal.Copy),而不管选择什么ImageLockMode

谢谢你抽出时间! 亲切问候/亨里克