Image オブジェクトを反転したい。現在、私のコードは次のようになっています。
private Image Invert(Image img)
{
var bmpPicture = new Bitmap(img.Width, img.Height);
var iaPicture = new ImageAttributes();
var cmPicture = new ColorMatrix { Matrix00 = -1, Matrix11 = -1, Matrix22 = -1 };
iaPicture.SetColorMatrix(cmPicture);
var gfxPicture = Graphics.FromImage(img);
var rctPicture = new Rectangle(0, 0, img.Width, img.Height);
gfxPicture.DrawImage(img, rctPicture, 0, 0, img.Width, img.Height, GraphicsUnit.Pixel, iaPicture);
return bmpPicture;
}
ただし、これを実行して で表示するとPictureBox
、結果は黒い画像になります。これは、Windows 8 リリース プレビューの Visual Studio 2012 で実行しています。これを行うためのより良い方法があれば、私に知らせてください。ありがとう。