2015-12-04 44 views
1

我正在使用Graphics类和SolidBrushes在窗体上绘制多个实心圆的小型项目。图形重叠时,有没有办法让区域变暗?我想这样做,因为随着更多的圆圈重叠,重叠的区域逐渐变暗,无论以任何颜色绘制圆圈。C#如何使用图形较暗绘制重叠区域

我已经查看过Graphics类文档,但我似乎无法找到任何正在讨论的内容这在它...但我可能错过了一些东西。

任何帮助,非常感谢!谢谢!

+2

使用Color类的阿尔法分量。 – LarsTech

+0

你的目标是什么:Winforms? WPF? ASP? ...? __Always__相应地标记您的问题! – TaW

+0

是的,Winform。对不起,我是相对新的stackOverflow – drewfiss90

回答

1

你有几个选项,当一个形状是透明的,你会得到你需要的行为。

a)设置不透明度小于1个

<Ellipse Height="10" Width="10" Fill="#101010" Opacity="0.5"></Ellipse> 

B)使用字母的颜色来填补你的形状。

<Ellipse Height="10" Width="10" Fill="#50101010"></Ellipse> 

通知B的填充属性)包括 “阿尔法”,指示不透明度,

#50(alpha)10(Red)10(green)10(blue) 
+0

这是用Brush类完成的吗?我发现没有使用fillElipse的超载方法,它为不透明度采用变量 – drewfiss90

+0

这是在ASP中完成的,对吗?所以这对于操作是没用的。 – TaW

+0

我相信我找到了解决方案。这篇文章有帮助。刷子刷子=新的SolidBrush(Color.FromArgb(alpha,红色,绿色,蓝色)) – drewfiss90