Step 1: 定义图像:
// 创建一个Image对象 int width = 600; int height = 400; Image myImage = new Image(width, height);
Step 2: 将Image对象装入绘图板,之后所有的绘图操作将在绘图板上进行
Graphics myGraphic = Graphics.FromImage(myImage);
Step 3: 定义画笔、画刷、字体
// 根据RGB色值定义画笔 Pen myPen = new Pen(Color.FromArgb(255,0,0),1); // 使用系统颜色定义画笔 Pen grayPen = new Pen(Color.Gray); // 定义画刷 Brush blackBrush = new SolidBrush(Color.Black); // 定义字体 Font songFont = new Font("宋体", 8, FontStyle.Bold);
Step 4: 绘制图形
注意:GDI中的坐标定义规则
// 绘制一条线, // 参数为:画笔、起点X、起点Y、终点X、终点Y myGraphic.DrawLine(blackPen, startPtX, startPtY, endPtX, endPtY); // 绘制一个矩形 // 参数为:画笔、矩形左上角点X、矩形左上角点Y、矩形宽度、矩形高度 myGraphic.DrawRectangle(blackPen, x, y, w, h); // 绘制一个圆形 -- 绘制圆形时,令长轴等于短轴即可 // 参数为:画笔、椭圆左上角点X、椭圆左上角点Y、椭圆长轴、椭圆短轴 myGraphic.DrawEllipse(blackPen, x, y, w, h);
Step 5: 绘制字符串
注意:绘制字符串时,一定要进行矩形画刷填充,否则字符串会挤成一坨,看不清
// 1. 定义字符串格式 StringFormat sf = new StringFormat{ LineAlignment = StringAlignment.Center, Alignment = StringAlignment.Center, FormatFlags = StringFormatFlags.NoWrap }; // 2. 定义字符串的填充矩形 Rectangle rect = new Rectangle(x, y, w, h); myGraphic.FillRectangle(new SolidBrush(Color.White), rect); // 3. 添加字符串到绘图板 // 参数按顺序依次为:字符串内容,字体,画刷,放置字符串的矩形、字符串格式定义 myGraphic.DrawString(context, font, brush, rect, sf);
Step 6: 将图配置给图片控件
// 配置绘制的图像到图片控件 this.pictureBox.Image = myImage; // 销毁绘图版 myGraphic.Dispose();
更多精彩,欢迎关注