Visual Basic 中学校 > Visual Basic サンプル集 > Visual Basic サンプル集目次 >
画像を半透明で重ねる
1.ファイルから読み込んで半透明で重ねる
以下の例では既に画像が表示されているPictureBox1に、新たな画像をファイルから読み込んで半透明で重ねて表示する。
Dim FileName As String = "C:\Sample1.bmp"
Dim SourceImage As Image = Image.FromFile(FileName)
Dim DestImage As Image = PictureBox1.Image
Dim g As Graphics = Graphics.FromImage(DestImage)
Dim Attr As New Imaging.ImageAttributes
Dim M As New Imaging.ColorMatrixM.Matrix00 = 1.0F
M.Matrix11 = 1.0F
M.Matrix22 = 1.0F
M.Matrix33 = 0.5F
M.Matrix44 = 1.0F
Attr.SetColorMatrix(M)g.DrawImage(SourceImage, New Rectangle(New Point, SourceImage.Size), 0, 0, SourceImage.Width, SourceImage.Height, GraphicsUnit.Pixel, Attr)
PictureBox1.Refresh()
SourceImage.Dispose()
メモ:PictureBox1にはあらかじめ画像を読み込んでおくなどしてImageプロパティに値をセットしておく必要があります。
2.PictureBox2の画像を半透明にしてPicutreBox1に重ねる
Dim SourceImage As Image = PictureBox2.Image
Dim DestImage As Image = PictureBox1.Image
Dim g As Graphics = Graphics.FromImage(DestImage)
Dim Attr As New Imaging.ImageAttributes
Dim M As New Imaging.ColorMatrixM.Matrix00 = 1.0F
M.Matrix11 = 1.0F
M.Matrix22 = 1.0F
M.Matrix33 = 0.5F
M.Matrix44 = 1.0F
Attr.SetColorMatrix(M)g.DrawImage(SourceImage, New Rectangle(New Point, SourceImage.Size), 0, 0, SourceImage.Width, SourceImage.Height, GraphicsUnit.Pixel, Attr)
PictureBox1.Refresh()
メモ:PictureBox1とPictureBox2にはあらかじめ画像を読み込んでおくなどしてImageプロパティに値をセットしておく必要があります。
すぐに試せるサンプル
以下の例ではSample1.bmpとSample2.bmpを半透明にしてPictureBox1に重ねて表示する。
サンプルを実行する前に必要なもの:
・PictureBox1
・C:\Sample1.bmp
・C:\Sample2.bmp
Dim
SourceImage As Image = Image.FromFile("C:\Sample1.bmp") Dim DestImage As Image = Image.FromFile("C:\Sample2.bmp") Dim g As Graphics = Graphics.FromImage(DestImage) Dim Attr As New Imaging.ImageAttributes Dim M As New Imaging.ColorMatrix
M.Matrix00 = 1.0F Attr.SetColorMatrix(M) g.DrawImage(SourceImage, New Rectangle(New Point, SourceImage.Size), 0, 0, SourceImage.Width, SourceImage.Height, GraphicsUnit.Pixel, Attr) PictureBox1.Image = DestImage SourceImage.Dispose() |