注意:画像の表示方法が分からないという方は、まず「コントロールやフォームに画像を表示する」をご覧ください。
指定した色を透明色として画像を表示する方法を紹介します。俗に言う「スプライト処理」ということになりそうです。
これには、画像情報の入ったBitmapオブジェクトのMakeTransparentメソッドを使って指定した色を透明色にしてから、そのBitmapオブジェクトを表示します。
次の例では、画像「C:\test\maketransparent1.png」の黒色を透明色にしてから、画像「C:\test\maketransparent2.png」上に描画し、その結果をピクチャボックス(PictureBox1)に表示しています。
+ | → | |||
maketransparent1.png | maketransparent2.png |
'Imports System.Drawing 'スプライト処理をする画像を読み込む Dim bmp As New Bitmap("C:\test\maketransparent1.png") '黒を透明色にする bmp.MakeTransparent(Color.Black) '背景の画像と合成する '背景となる画像を読み込む Dim backBmp As New Bitmap("C:\test\maketransparent2.png") '背景の画像に描画する Dim g As Graphics = Graphics.FromImage(backBmp) g.DrawImage(bmp, 0, 0, bmp.Width, bmp.Height) g.Dispose() bmp.Dispose() '合成した画像をPictureBox1に表示する PictureBox1.Image = backBmp
//using System.Drawing; //スプライト処理をする画像を読み込む Bitmap bmp = new Bitmap(@"C:\test\maketransparent1.png"); //黒を透明色にする bmp.MakeTransparent(Color.Black); //背景の画像と合成する //背景となる画像を読み込む Bitmap backBmp = new Bitmap(@"C:\test\maketransparent2.png"); //背景の画像に描画する Graphics g = Graphics.FromImage(backBmp); g.DrawImage(bmp, 0, 0, bmp.Width, bmp.Height); g.Dispose(); bmp.Dispose(); //合成した画像をPictureBox1に表示する PictureBox1.Image = backBmp;
注意:この記事では、基本的な事柄の説明が省略されているかもしれません。初心者の方は、特に以下の点にご注意ください。