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

背景色が保存時に変わる

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

フォームのPictureboxに、背景が透明色の画像ファイル(gif)を読み込んで貼り付け、
画像フォーマットを指定して、jpg形式で名前を付けて保存すると、背景が
黒色になってしまいます。
画像の背景を透明色のまま、もしくは、白色にして保存する方法を教えて下さい。
  • 題名: Re[1]: 背景色が保存時に変わる
  • 著者: はいこーん
  • 日時: 2005/07/22 15:20:24
  • ID: 11920
  • この記事の返信元:
  • この記事への返信:
    • (なし)
  • ツリーを表示
外しているかもしれませんが、過去ログより古い過去ログを検索すると、それらしいスレがありますよ。
> 画像の背景を透明色のまま、
JPEG自体が、透明色をサポートしていなかったような。(JPEG 2000 は別として)


> もしくは、白色にして保存する方法を教えて下さい。
こういう感じでよいのかな……。

Dim Img As Image = Me.PictureBox1.Image
Dim Bmp As New Bitmap(Img.Width, Img.Height)
Dim G As Graphics = Graphics.FromImage(Bmp)
G.Clear(Color.White)
G.DrawImage(Img, Img.GetBounds(GraphicsUnit.Pixel))
Bmp.Save("C:\test.jpg", Imaging.ImageFormat.Jpeg)
G.Dispose()
Bmp.Dispose()

あとは、このあたりとか。
http://dobon.net/vb/dotnet/graphics/setremaptable.html
記述して頂いたコードを元にして、画像の背景を白色にして保存することができました。
ありがとうございました。

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