DOBON.NET DOBON.NETプログラミング掲示板過去ログ

bmpの色反転について

環境/言語:[VB.NET]
分類:[.NET]

いつも参考にさせていただいてます。
bmpファイルを色反転させようと下記のコードを作成したのですが、色反転したファイルが作成されません。
お分かりになる方がいらっしゃいましたらご教授お願いします。

----コード----
    '//bmp反転処理
Dim b As Bitmap = Bitmap.FromFile("D:\vbnet\001.BMP")
Dim bmp As Bitmap = New Bitmap(b.Size.Width, b.Size.Height)
Dim g As Graphics = Graphics.FromImage(bmp)

'ColorMatrixオブジェクトの作成
Dim cmx As New System.Drawing.Imaging.ColorMatrix
'ColorMatrixの行列の値を変更して、色が反転されるようにする
cmx.Matrix00 = -1
cmx.Matrix11 = -1
cmx.Matrix22 = -1

'ImageAttributesオブジェクトの作成
Dim ia As New System.Drawing.Imaging.ImageAttributes
'ColorMatrixを設定する
ia.SetColorMatrix(cmx)

'ImageAttributesを使用して色が反転した画像を描画
g.DrawImage(b, New Rectangle(0, 0, bmp.Width, bmp.Height), 0, 0,     bmp.Width, bmp.Height, GraphicsUnit.Pixel.Pixel, ia)

g.Clear(Color.Blue)

b.Save("D:\vbnet\002.BMP")

'リソースを開放する
b.Dispose()
bmp.Dispose()
g.Dispose()
> g.Clear(Color.Blue)
折角描いたのにクリアしちゃうんですか?

> b.Save("D:\vbnet\002.BMP")
b ってファイルから読み込んだ方のじゃ?
すみません。
g.Clear(Color.Blue)
は、Matrixが機能しているのか、その他の部分に問題があるのか試しているうちに消し忘れていました。
>>b.Save("D:\vbnet\002.BMP")
> ってファイルから読み込んだ方のじゃ?
参考にしてみます。
Hongliangさんありがとうございます。
bmp.Save("D:\vbnet\002.BMP")
でOKでした。
初歩的なところにミスしていました。
解決済み!

DOBON.NET | プログラミング道 | プログラミング掲示板