1:GDI+概述
1.1:GDI+和.Net的关系
GDI+是Mircrosoft新的.Net Framework的类库。用于图形编程。它是.Net Framework的一部分。GDI+被组织到六个命名空间中,所有的这些命
名空间都包含在DLL文件System.Drawing.dll中。
1.2:GDI+和GDI的关系
GDI+是基于GDI的。GDI是Windows API中处理图形的部分,GDI+是GDI的包装器。封装为类之后,使得图形编程避免了直接使用API的困难,并且
具有了更多的面向对象的思想。
1.3:GDI+的主要功能:
A:提供了三种绘图表面:窗口,位图和打印机
B:GDI+提供的工具可以在任何绘图表面上绘制二维“线框图”
C:GDI+对文本绘制功能进行了扩展(反锯齿技术)
D:GID+支持位图和图像(可以在任何绘图表面上读取图像,绘制图像,也可一创建和绘制图像)
E:GID+支持打印
F:GDI+可以处理各种.Net程序(可以用于Windows Form和ASP.Net应用程序)
GDI+命名空间:
System.Drawing -- 基本的图形功能
System.Drawing.Drawing2D -- 高级的图形功能
System.Drawing.Imaging -- 高级图像功能
System.Drawing.Printing -- 打印和打印预览功能
System.Drawing.Text -- 高级字体功能
System.Drawing.Design -- 高级的自定义控件的设计时支持
2:绘图表面
2.1:绘图表面概述:
三种绘图环境:屏幕上的窗体,发送到打印机的页面,内存中的位图和图像
对应着三种绘图表面:基于象素的窗体,图像或者页面。
绘图表面 -- 对屏幕上的窗口,打印机上的页面或者内存中的图像的一种基于光栅的抽象。
基于光栅:--
基于矢量:--
目前:几乎所有的设备都是基于光栅的。常用的方法是:假定图形是基于适量的(因为矢量更加容易描述图像),然后根据需要,采用某种机
制,将矢量形式转换为光栅的形式。
2.2:绘图表面的特征
任何绘图表面都有三个特征:界面的大小,象素分辨率和颜色深度。
A:绘图表面的大小
绘图表面的水平象素和垂直象素数目来确定
B:绘图表面的分辨率
使用象素/英寸 或者 点/英寸的形式表示
72DPI表示:一英寸的区域中应该由一个水平象素为72,垂直象素为72的网格组成。
C:绘图表面的颜色深度
光栅图的本质是在格上绘制各个象素来形成图像的。
24色:每个颜色由R,G,B分量表示,每个8位。可包含256*256*256中颜色。
2.3:Graphics对象的创建
要想在绘图表面上绘图,就必须创建Graphics对象,Graphics封装了各种绘图功能。
不同的绘图表面,Graphics对象的创建不同。
窗口:
PaintEventArgs e;
Graphics g = e.Graphics;
打印页面:
PrinttEventArgs e;
Graphics g = e.Graphics;
图像:Graphics g = Graphics.FromImage(bmp);