vb.net带有透明背景的.png图片框?

时间:2013-01-11 15:30:54

标签: vb.net image transparent

我有一个名为donkey1.png的.png文件 - 它有一个透明的背景,我把它加载到一个名为pcbDonkey1的图片框中 - 我已经改变了图片框的属性,使背景颜色透明 - 这不起作用仍然穿过另一个图像并具有白色背景。

我听说过使用GDI绘制这个图像所以它会有一个透明的图像,并能够穿过没有白色背景的图像。

你会怎么做?

由于

2 个答案:

答案 0 :(得分:4)

只需将背景图片设置为前景图片框的父级,透明度即可使用而无需任何其他编码

     With PictureBox1

        .Image = My.Resources._00_lichaam
        .SizeMode = PictureBoxSizeMode.Zoom
    End With
    With PictureBox2
        .Parent = PictureBox1
        .Image = My.Resources._01_Hoofd
        .SizeMode = PictureBoxSizeMode.Zoom
        .BackColor = Color.Transparent
    End With

那应该有用

答案 1 :(得分:2)

除非您需要PixtureBox控件而不是显示图像,否则您可以将图像直接绘制到Paint事件中的表单:

示例(您需要计算宽高比等,但原则上):

Sub Form_Paint(s as Object, e as PaintEventArgs) Handles Me.OnPaint

    Dim r As New Rectangle(myX, myY, myWidth, myHeight)
    e.graphics.DrawImage(myImage, r)

End Sub