using System;using System.Drawing;using System.Collections;using System.ComponentModel;using System.Windows.Forms;using System.Data;using System.Drawing.Drawing2D;namespace Image{/// <summary>/// Form1 的摘要说明。/// </summary>public class Form1 : System.Windows.Forms.Form{/// <summary>/// 必需的设计器变量。/// </summary>private System.ComponentModel.Container components = null;public Form1(){//// Windows 窗体设计器支持所必需的//InitializeComponent();//// TODO: 在 InitializeComponent 调用后添加任何构造函数代码//}/// <summary>/// 清理所有正在使用的资源。/// </summary>protected override void Dispose( bool disposing ){if( disposing ){if (components != null) {components.Dispose();}}base.Dispose( disposing );}#region Windows 窗体设计器生成的代码/// <summary>/// 设计器支持所需的方法 - 不要使用代码编辑器修改/// 此方法的内容。/// </summary>private void InitializeComponent(){// // Form1// this.AutoScaleBaseSize = new System.Drawing.Size(6, 14);this.BackColor = System.Drawing.SystemColors.Window;this.ClientSize = new System.Drawing.Size(352, 278);this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.Fixed3D;this.MaximizeBox = false;this.Name = "Form1";this.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen;this.Text = "演示路径渐变画刷";this.Paint = new System.Windows.Forms.PaintEventHandler(this.Form1_Paint);}#endregion/// <summary>/// 应用程序的主入口点。/// </summary>[STAThread]static void Main() {Application.Run(new Form1());}private void Form1_Paint(object sender, System.Windows.Forms.PaintEventArgs e){//绘制路径渐变图形Graphics gp=e.Graphics;//绘制第一个图形//设置第一个图形的点坐标数组Point []myPtsA={new Point(10,10),new Point(90,10),new Point(170,10),new Point(170,50),new Point(170,90),new Point(90,90),new Point(10,90),new Point(10,50)};//设置第一个图形的颜色数组Color []myColsA = { Color.White, Color.Black,Color.White, Color.Black,Color.White,Color.Black,Color.White,Color.Black};PathGradientBrush myPGBrushA=new PathGradientBrush(myPtsA);myPGBrushA.SurroundColors=myColsA;gp.FillRectangle(myPGBrushA,10,10,160,80);//绘制第二个图形//设置第二个图形的点坐标数组 Point []myPtsB={new Point(180,10),new Point(260,10),new Point(340,10),new Point(340,50), new Point(340,90),new Point(260,90),new Point(180,90),new Point(180,50)};//设置第二个图形的颜色数组 Color []myColsB = {Color.Green,Color.Blue, Color.Green, Color.Blue, Color.Green, Color.Blue, Color.Green,Color.Blue,}; PathGradientBrush myPGBrushB=new PathGradientBrush(myPtsB); myPGBrushB.SurroundColors=myColsB; myPGBrushB.CenterColor=Color.Yellow; gp.FillRectangle(myPGBrushB,180,10,340,80);//绘制第三个图形//设置第三个图形的点坐标数组Point []myPtsC ={new Point(90, 100),new Point(115,165),new Point(170,170), new Point(125,210),new Point(140,270),new Point(90,235),new Point(40,270), new Point(55,210), new Point(10,170), new Point(65,165)};GraphicsPath myPathC=new GraphicsPath();myPathC.AddLines(myPtsC);PathGradientBrush myPGBrushC=new PathGradientBrush(myPathC);myPGBrushC.CenterColor=Color.Yellow;//设置第三个图形的颜色数组Color []myColorsC = {Color.Red,Color.Yellow,Color.Red,Color.Yellow, Color.Red,Color.Yellow,Color.Red, Color.Yellow,Color.Red,Color.Yellow}; myPGBrushC.SurroundColors=myColorsC;gp.FillPath(myPGBrushC, myPathC);//绘制第四个图形//设置第四个图形的点坐标数组Point []myPtsD ={new Point(180, 170),new Point(240,100),new Point(340,100), new Point(340,200),new Point(280,270),new Point(180,270),};GraphicsPath myPathD=new GraphicsPath(); myPathD.AddLines(myPtsD);PathGradientBrush myPGBrushD=new PathGradientBrush(myPathD);myPGBrushD.CenterPoint=new Point(280,170); myPGBrushD.CenterColor=Color.White;//设置第四个图形的颜色数组Color []myColorsD = {Color.Cyan,Color.Blue,Color.Cyan, Color.Green,Color.Cyan,Color.LightGreen}; myPGBrushD.SurroundColors=myColorsD;gp.FillPath(myPGBrushD, myPathD);}}}
评论