2009-02-23 10 views
6

Mezun olmuş bir renk kullanarak bir çizgi çizmek mümkün mü?Degrade rengi olan bir çizgi çizme

Çizginin bir ucunda Mavi, diğer ucun Kırmızı olduğu düz veya eğri bir çizgi çizebiliyorum (mümkünse). Ayrıca, Mavi -> Yeşil -> Kırmızı arasında gidip gelen her renk için birden fazla eğime sahip olması gerekebilir. Bunun sadece birlikte çizilen birden fazla eğim çizgisinden oluşabileceğini düşünüyorum.

cevap

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

Sen –

+2

hayır, bu durumda gerekmez ... elden çağırarak edilmelidir. OnPaint yönteminden sonra Dispose() yöntemi otomatik olarak çağrılacaktır. –

+0

Boya kalemi ve Fırça üzerinde olmalı. Daha da iyisi, onları üye olarak canlı tutun ve her boyada yenilerini yaratmayın. – configurator

3

yerine System.Drawing.SolidBrush

örnek System.Drawing.Drawing2D.LinearGradientBrush kullanmak gerekir:

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