着色非通用轮廓

时间:2010-12-14 12:29:11

标签: c# graphics

我正在使用C#并且我正在以编程方式绘制图片(因为图片可能会根据我的应用程序中的参数的运行时值而有所不同)。我最终得到了非通用的闭合轮廓(由直线和曲线组成)。现在我需要填充不同颜色的那些。 知道我怎么能做到这一点?

提前致谢。

3 个答案:

答案 0 :(得分:0)

看看flood fill algorithms。你最好不要绘制到位图,然后渲染到表单(我假设你使用的是WinForms)。

答案 1 :(得分:0)

如果是Winforms,我认为最好的是FillRegion。或者尝试Flood Fill。不幸的是,这并不容易,因为.net中没有填充本机Flood。但是有免费的实现和从GDI导入它的方法

答案 2 :(得分:0)

您可以使用PathGradientBrushHere's an code example

Public NotInheritable Class PathGradientBrush
          Inherits System.Drawing.Brush
     Member of System.Drawing.Drawing2D
Summary:
Encapsulates a System.Drawing.Brush object that fills the interior of a System.Drawing.Drawing2D.GraphicsPath object with a gradient. This class cannot be inherited.