7

是否可以使用渐变色画线?

我希望能够绘制一条直线或曲线(如果可能),线的一端是蓝色,另一端是红色。

此外,每行可能需要一个以上的渐变,例如颜色从蓝色 -> 绿色 -> 红色。我在想这可能只是由多个绘制在一起的渐变线组成。

4

2 回答 2

11
protected override void OnPaint(PaintEventArgs e)
{
    base.OnPaint(e);

    Graphics graphicsObject = e.Graphics;

    using (Brush aGradientBrush = new LinearGradientBrush(new Point(0, 0), new Point(50, 0), Color.Blue, Color.Red))
    {
        using (Pen aGradientPen = new Pen(aGradientBrush))
        {
            graphicsObject.DrawLine(aGradientPen, new Point(0, 10), new Point(100, 10));
        }
    }
}
于 2009-02-23T08:16:44.907 回答
5

您将需要使用System.Drawing.Drawing2D.LinearGradientBrush而不是System.Drawing.SolidBrush

例子:

e.Graphics.DrawLine(new Pen(new System.Drawing.Drawing2D.LinearGradientBrush(...
于 2009-02-23T08:08:49.187 回答