WriteableBitmap.WritePixelsメソッドに必要なバッファサイズを計算するにはどうすればよいですか?
私は4つのパラメーターを使用してオーバーロードを使用しています。最初はInt32Rect、次は色のRGBA番号を含むバイト配列、3番目はストライド(書き込み可能なビットマップの幅にピクセルあたりのビット数を掛けたもの)です。 8)で、最後はバッファ(Intellisenseではオフセットと呼ばれます)です。
以下のコードでは、バッファサイズが十分なランタイムエラーではありません。
byte[] colourData = { 0, 0, 0, 0 };
var xCoordinate = 1;
var yCoordinate = 1;
var width = 2;
var height = 2;
var rect = new Int32Rect(xCoordinate, yCoordinate, width, height);
var writeableBitmap = new WriteableBitmap(MyImage.Source as BitmapSource);
var stride = width*writeableBitmap.Format.BitsPerPixel/8;
writeableBitmap.WritePixels(rect, colourData, stride,0);
上記のコードで必要なバッファー値を計算するために使用する必要がある式は何ですか?