我想将整个位图数据复制到字节数组中 我可以知道,我该怎么做? 我使用了下面的代码片段
bmpdata = bitmap.LockBits(new Rectangle(0, 0, bitmap.Width, bitmap.Height), ImageLockMode.ReadOnly,bitmap.PixelFormat);
int numbytes = bmpdata.Stride * bitmap.Height;
byte[] bytedata = new byte[numbytes];
IntPtr ptr = bmpdata.Scan0;
Marshal.Copy(ptr, bytedata, 0, numbytes);
return bytedata;
但是复制到字节数组中的值始终为零
这会工作吗?
总的来说,您正在正确复制,并且 MSDN 上有一个关于此类复制的示例代码片段。
您通常应该逐行复制,因为不必连续布置行。
如果要复制的所有数据均为零,则源bitmap
对象可能首先不包含任何有效数据,仅包含黑色。