停止LinearGradientBrush重复

时间:2009-09-12 18:48:49

标签: graphics gdi+ gradient

我正在试图弄清楚如何阻止LinearGradientBrush重复以及我正在绘制的形状。因此,例如我创建了高度等于50的渐变,但接下来我绘制高度等于150的矩形。在这种情况下,渐变将重复三次。但我想只绘制第一个渐变,并为其余的矩形绘制任何内容。 似乎WPF中的GradientBrush为此目的支持SpreadMethod(http://msdn.microsoft.com/en-us/library/system.windows.media.gradientbrush.spreadmethod.aspx),但是WinForms也存在一些东西吗?

1 个答案:

答案 0 :(得分:2)

保罗,我认为最简单的方法可能是以相同的方式创建填充,但只使用50像素的矩形绘制。如果您需要使用特定颜色填充其他100个像素,请先使用该颜色进行实心填充。

或者,您可以尝试在渐变填充(LinearGradientbrush :: SetBlend)中设置混合,但这似乎需要付出很多努力来实现相同的效果。