下の画像に示されている青い形を描くために使用できるGDIメソッドは何ですか?中心は透明でなければなりません。
3 に答える
1
いくつかの方法がありますが、おそらく次のものを使用することをお勧めします。
FillRectangle
FillPolygon
DrawLine
形状を長方形と2つの多角形に縮小してから、数本の線で輪郭を描くことができるように見えるためです。
これは私が考えていたものの本当に単純でハードコーディングされた例です:
Private Sub Control_Paint(ByVal sender As Object, ByVal e As PaintEventArgs) _
Handles MyBase.Paint
Dim g As Graphics = e.Graphics
g.FillRectangle(Brushes.Aqua, New Rectangle(10, 10, 10, 90))
g.FillPolygon(Brushes.Aqua, New Point() { _
New Point(10, 10), _
New Point(20, 10), _
New Point(40, 50), _
New Point(30, 50)})
g.FillPolygon(Brushes.Aqua, New Point() { _
New Point(10, 100), _
New Point(20, 100), _
New Point(40, 50), _
New Point(30, 50)})
g.DrawLine(Pens.Black, New Point(10, 10), New Point(10, 100))
g.DrawLine(Pens.Black, New Point(10, 100), New Point(20, 100))
g.DrawLine(Pens.Black, New Point(20, 100), New Point(40, 50))
g.DrawLine(Pens.Black, New Point(40, 50), New Point(20, 10))
g.DrawLine(Pens.Black, New Point(20, 10), New Point(10, 10))
..。
于 2010-03-30T21:07:05.410 に答える
0
ここではGDI+、別名System.Drawing名前空間を想定しています。
最善の方法は、System.Drawing.Drawing2d.GraphicsPathクラスを確認することです。
http://msdn.microsoft.com/en-us/library/system.drawing.drawing2d.graphicspath.aspx
中空効果を得るには、必ずパスを閉じる必要があります。
于 2010-03-30T21:06:12.637 に答える
-1
ビットマップを使って描くほうが簡単ではないでしょうか。それはとにかく彼らが何のためにあるのかです:)。
于 2010-03-30T21:32:20.923 に答える