2011-12-13 173 views
2

我有这样的代码:BitmapSource.Create错误 - 缓冲区大小不够大

BitmapSource.Create(pixelWidth, pixelHeight, 
        dpiX, dpiY, image.Format, image.Palette, 
        _modifiedRgb, stride); 

这引发

ArgumentException的 - 缓冲区大小是不够

有什么想法吗?

+0

也许更多的代码会有帮助吗? – SOReader

回答

4

这将意味着您的_modifiedRgb不够大。
它需要包含Height * Stride * Format.BitsPerPixel/8字节。

+0

啊!得到它了!谢谢! – Seva

+0

为什么再乘以Format.BitsPerPixel/8? 可以说我有一个位图5X5和我的格式是灰色16 步幅= 5 * 2; bufferSize = 5 *步幅; 在这种情况下,25个像素== 50个字节。 你的建议是100像素的25像素..我的问题是为什么? –

+0

@Clemens你介意看看? –