Инвертирующее изображение возвращает черное изображение

Я хочу инвертировать объект 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В результате получается черное изображение. Я запускаю это в Visual Studio 2012 под предварительным просмотром Windows 8 Release. Если есть лучший способ сделать это, пожалуйста, дайте мне знать. Благодарю.

Ответы на вопрос(7)

Ваш ответ на вопрос