可以用PathGradientBrush类进行路径的渐变填充,如:
1 private void Form1_Paint(object sender, PaintEventArgs e)
2 {
3 Graphics g = e.Graphics;
4 GraphicsPath gp = new GraphicsPath();
5
6 gp.AddLine(10, 10, 110, 15);
7 gp.AddLine(110, 15, 110, 96);
8 gp.AddLine(100, 96, 15, 110);
9 gp.CloseFigure();
10
11 g.FillRectangle(Brushes.White,this.ClientRectangle);
12 g.SmoothingMode = SmoothingMode.AntiAlias; //反锯齿
13
14 PathGradientBrush pgb = new PathGradientBrush(gp);
15 pgb.CenterColor = Color.White;
16 pgb.SurroundColors = new Color[]
17 {
18 Color.Blue
19 };
20 g.FillPath(pgb,gp);
21 g.DrawPath(Pens.Black,gp);
22 pgb.Dispose();
23 gp.Dispose();
24 }
图形为: