0

我的 pixBox1 已修复,无法更改图像

并且 pixBox2 不固定,可以在此处更改颜色并在此处旋转

我使用 OpenFileDialog 函数将图像放入那些像素框

那么现在我怎样才能将这两个 pixbox 合并到我的 pixbox3 中呢?

我试试这个,但它看起来不起作用:

  Dim image As New Bitmap(pixBox1.Image)
    Dim image2 As New Bitmap(pixBox2.Image)
    Dim Image3 As New Bitmap(300, 300)

    Dim g As Graphics = Graphics.FromImage(Image3)

    g.DrawImage(image1, New Point(300, 300))

    g.DrawImage(image2, New Point(300, 300))

    g.Dispose()

    g = Nothing

    pixBox3.Image = Image3
4

1 回答 1

0

这有点丑陋和缓慢,但它基本上将所有像素设置image2为 50% 透明,然后将其绘制在Image.

Dim image As New Bitmap(pixBox1.Image)
Dim image2 As New Bitmap(pixBox2.Image)
Dim Image3 As New Bitmap(300, 300)

Using g As Graphics = Graphics.FromImage(Image3)

    'make 2nd bmp translucent

    For Integer Xcount = 0 To image2.Width - 1            
        For Integer Ycount = 0 To image2.Height - 1
            Dim c as Color = image2.GetPixel(Xcount, Ycount)
            c = Color.FromARGB(125, c.R, c.G, c.B) '50% alpha
            image2.SetPixel(Xcount, Ycount, c)
        Next 
    Next 

    g.DrawImage(image1, New Point(0, 0))

    g.DrawImage(image2, New Point(0, 0))

End Using

pixBox3.Image = Image3

作为旁注,无论发生什么,该Using块都确保被处置。g

于 2012-11-30T18:12:14.153 回答