【发布时间】:2013-05-30 02:43:16
【问题描述】:
我在将结构数组复制为字节数组时遇到问题。这些结构是简单的 RGB 结构。
public struct RGBColor { byte r; byte g; byte b; }
然后我有一个 RGBColor[] 数组,它表示我想在调用 LockBits() 后复制到 Bitmap 的扫描线。它只允许使用Marshal.Copy() 复制byte[] 的数组。
如果我理解正确(记住我不理解),我需要将RGBColor[] 数组编组为字节数组,将数据复制到新的byte[] 数组,然后将该数组复制到位图.似乎发生了不必要的复制操作,我有一个中间 byte[] 数组只是充当中间人。
有没有什么办法可以将RGBColor[] 转换为byte[],这样我就可以直接将其复制到锁定的位图上?
【问题讨论】:
标签: c# bitmap marshalling lockbits