2009-02-23 132 views
6

是否可以用漸變色繪製線條?用漸變色繪製線條

我希望能夠繪製直線或曲線(如果可能的話),其中線的一端是藍色,另一端是紅色。

此外,可能需要每行有多個漸變,例如顏色從藍色 - >綠色 - >紅色。我在想,這可能只是由多個漸變線組成。

回答

9
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)); 
     } 
    } 
} 
+0

你應該調用dispose ... – 2009-02-23 08:18:06

3

,你將需要使用System.Drawing.Drawing2D.LinearGradientBrush代替System.Drawing.SolidBrush

例如:

e.Graphics.DrawLine(new Pen(new System.Drawing.Drawing2D.LinearGradientBrush(...