C#利用GDI绘制常见图形和文字
废话不多说,我们先来认识一下这个GDI+,看看它到底长什么样。
GDI+:GraphicsDeviceInterfacePlus也就是图形设备接口,提供了各种丰富的图形图像处理功能;在C#.NET中,使用GDI+处理二维(2D)的图形和图像,使用DirectX处理三维(3D)的图形图像,图形图像处理用到的主要命名空间是System.Drawing:提供了对GDI+基本图形功能的访问,主要有Graphics类、Bitmap类、从Brush类继承的类、Font类、Icon类、Image类、Pen类、Color类等.
大概了解了什么是GDI+后,我们直接用几个示例,来向大家展示它能做什么吧。
1.画一条直线
privatevoidbtnDrawLine_Click(objectsender,EventArgse)
{
//创建一个画图图面
Graphicsg=this.CreateGraphics();
//创建一只笔
Penpen=newPen(Brushes.Red);
//直线的两个坐标
PointpointStart=newPoint(10,10);
PointpointEnd=newPoint(50,50);
//开始画
g.DrawLine(pen,pointStart,pointEnd);
}
2.画一个矩形
privatevoidbtnDrawRectangle_Click(objectsender,EventArgse)
{
//创建一个画图图面
Graphicsg=this.CreateGraphics();
//创建一只笔
Penpen=newPen(Brushes.DeepSkyBlue);
//确定矩形的起点、长和高
g.DrawRectangle(pen,50,50,60,30);
}
3.画一个字符串
privatevoidbtnDrawString_Click(objectsender,EventArgse)
{
Graphicsg=this.CreateGraphics();
Fontfont=newFont("华为宋体",12);
//Point一样,只是值是浮点类型
PointFpoint=newPointF(50,50);
g.DrawString("我是Kimisme",font,Brushes.Coral,point);
}
4.画一个扇形
privatevoidbtnDrawSector_Click(objectsender,EventArgse)
{
Graphicsg=this.CreateGraphics();
g.DrawPie(newPen(Brushes.Green),
newRectangle(newPoint(100,70),
newSize(50,50)),60,90);
}