GDI+ (.NET的图形设备接口)简介:
.NET中如何将图形输出到屏幕、打印机、内存位图上?
命名空间System.Drawing, 程序集System.Drawing.dll
1. Color结构体:表示 ARGB 颜色
(1) 创建自定义颜色,静态方法:
Color c = Color.FromArgb(120, 255, 0, 0);
(2) 获取系统定义好的颜色:
Color c = Color.Red; / Color c = Color.Black; /…
2. Rectangle结构体: 表示一个矩形
(1) 创建一个矩形:
Rectangle r = new Rectangle(int x, int y, int width, int height);
3. Pen类:画笔,用于绘制直线和曲线的对象
(1) 创建自定义画笔:
Pen p = new Pen(color);
(2) 获取系统定义好的标准画笔:
Pen p = Pens.Red; / Pen p = Pens.Blue / …
4. Brush 类:画刷,定义用于填充图形形状内部的对象
(1) 创建自定义画刷:
Brush b = new SolidBrush(color);
(2) 获取系统定义画刷:
Brush b = Brushes.Red; …
5. Graphics类:
Graphics 类提供将对象绘制到显示设备的方法。Graphics 对象与特定的设备上下文关联。
(1) 获取Graphics类对象常见方法:
Graphics跟输出对象相关,必须问输出对象获取,不能直接new
A. 从绘制事件处理方法的事件参数中获取
B. WinForm控件的CreateGraphics()方法
Graphics gx = 控件对象.CreateGraphics();
C. 通过Graphics静态方法获取,如获取图片上的
Graphics gx = Graphics.FormImage(Image对象);
(2) 绘图方法:
绘制文字:public void DrawString(string, Font, Brush, float, float);
绘制图形:public void DrawLine (Pen, int, int, int, int)
public void DrawRectangle(Pen, int, int, int, int);
public void DrawEllipse(Pen, Rectangle)
public void FillRectangle(Brush, Rectangle)
public void FillEllipse(Brush, Rectangle)
public void DrawImage(Image, int, int);
测量输出文字的大小:
public SizeF MeasureString(string text, Font f);
给出字符串值和要绘制的字体,就可以测量出绘制时候的大小,通过SizeF.Width,SizeF.Height可以知道宽和高