C# 填充包含另一形状的形状的特定区域
在Winforms应用程序中,我正在做2D绘图。 例如,当我尝试填充一个包含圆的矩形时。我只希望圆外的区域应该用指定的颜色填充。C# 填充包含另一形状的形状的特定区域,c#,winforms,drawing,C#,Winforms,Drawing,在Winforms应用程序中,我正在做2D绘图。 例如,当我尝试填充一个包含圆的矩形时。我只希望圆外的区域应该用指定的颜色填充。 我试过了,但是整个矩形都被填满了。只要试一下,就可以得到想要的输出。打开windows窗体并添加按钮。在按钮单击事件中,只需添加以下代码: Region rgn = new Region(new Rectangle(50, 50, 200, 150)); System.Drawing.Drawing2D.GraphicsPath path = new System.D
我试过了,但是整个矩形都被填满了。只要试一下,就可以得到想要的输出。打开windows窗体并添加按钮。在按钮单击事件中,只需添加以下代码:
Region rgn = new Region(new Rectangle(50, 50, 200, 150));
System.Drawing.Drawing2D.GraphicsPath path = new System.Drawing.Drawing2D.GraphicsPath();
path.AddEllipse(60, 60, 100, 100);
rgn.Exclude(path);
Graphics g = this.CreateGraphics();
g.FillRegion(Brushes.Blue, rgn);
“rgn.Exclude(Path)”将帮助您绘制矩形,但不包括其中的圆。请添加更多细节。您到底尝试了什么代码?是的,我们可以使用更多细节,但如果这是一个有用的想法:您可以先绘制矩形,然后绘制填充了任何背景/基础颜色的圆。这个问题相关吗?这些代码对我帮助很大。非常感谢你。