GDI+学习笔记(1)

 

GDI+学习笔记

GDI(Graphics Device Interface)+ API,顾名思义通过一组部署为托管代码的类被公开。这组类被称为 GDI+ 的“托管类接口”。托管类接口由以下命名空间组成:

·                 System.Drawing

·                 System.Drawing.Drawing2D

·                 System.Drawing.Imaging

·                 System.Drawing.Text

·                 System.Drawing.Printing

其中System.Drawing空间是基本应用,其他为高级。

首先让我们了解一些常用的结构:

Color 表示 ARGB 颜色。

 Point 表示在二维平面中定义点的、整数 X Y 坐标的有序对。

 PointF 表示在二维平面中定义点的浮点 x y 坐标的有序对。

 Rectangle 存储一组整数,共四个,表示一个矩形的位置和大小。对于更高级的区域函数,请使用 Region 对象。

 RectangleF 存储一组浮点数,共四个,表示一个矩形的位置和大小。对于更高级的区域函数,请使用 Region 对象。

 Size 存储一个有序整数对,通常为矩形的宽度和高度。

 SizeF 存储有序浮点数对,通常为矩形的宽度和高度。

常用的类

Pen 画线用

Brush 填充封闭图形用

Font 定义字体格式

Graphics :封装了GDI+的绘图方法,不可继承

Bitmap,Icon,Image 图像相关的类

 

一个简单的例子:

        private void Form2_Paint(object sender, PaintEventArgs e)

        {

            Graphics gc = e.Graphics;

            gc.DrawEllipse(System.Drawing.Pens.Blue, 10, 10, 100, 100 ); //画圆

 

            SolidBrush brush1 = new SolidBrush(Color.Red); //创建一个单色画刷

            gc.FillEllipse(brush1, 10, 10, 100, 100); //填充圆

        }

说明下: 获取设备相关的Graphics类对象的方法,1、继承自Control的CreateGraphics()方法,2、控件的Paint事件的PaintEventArgs参数。

Brush是抽象类,因此应使用具体的画刷如SolidBrush,HatchBrush,TextureBrush,LinearGradientBrush(渐变画刷),PathGradientBrush。

你可能感兴趣的:(学习笔记)