0

修正されたpixBox1があり、画像を変更できません

pixBox2は修正されておらず、色を変更してここで回転できます

OpenFileDialog 関数を使用して、これらの pixbox 内に画像を配置します

では、これら2つの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

これはちょっと醜くて遅いですが、基本的にすべてのピクセルをimage250% 透明に設定してから、 の上に描画し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 に答える