スクリーンショットのビットマップから 4 ピクセルごとに R、G、B の値を返す C# 関数を作成しようとしています。これは私のコードの一部です。
for (int ix = 4; ix < 1366; ix = ix + 4)
{
x = x + 4;
for (int iy = 3; iy < 768; iy = iy + 4)
{
y = y + 4;
System.Drawing.Color pixelcolor = screenshot.GetPixel(x,y);
red = kolorpiksela.R;
green = kolorpiksela.G;
blue = kolorpiksela.B;
sumR = sumR + red;
sumG = sumG + green;
sumB = sumB + blue;
}
}
screenshot
ビットマップはどこにありますか。最後に、「合計」値がピクセル数で除算されます。私の問題は、それが機能しないことです。私が得るエラーは次のとおりです。
System.Drawing.dll で 'System.ArgumentOutOfRangeException' 型の未処理の例外が発生しました
追加情報: パラメーターは正で < 高さでなければなりません。
エラーの理由は、すべてのステップをリセットする必要があるためだと思いますがpixelcolor
、過去 2 日間はそうしようとしました。失敗。