C#利用GDI绘制常见图形和文字

所属分类: 软件编程 / C#教程 阅读数: 68
收藏 0 赞 0 分享

废话不多说,我们先来认识一下这个GDI+,看看它到底长什么样。

GDI+:Graphics Device Interface Plus也就是图形设备接口,提供了各种丰富的图形图像处理功能;在C#.NET中,使用GDI+处理二维(2D)的图形和图像,使用DirectX处理三维(3D)的图形图像,图形图像处理用到的主要命名空间是System . Drawing:提供了对GDI+基本图形功能的访问,主要有Graphics类、Bitmap类、从Brush类继承的类、Font类、Icon类、Image类、Pen类、Color类等.

大概了解了什么是GDI+后,我们直接用几个示例,来向大家展示它能做什么吧。

1.画一条直线

复制代码 代码如下:
private void btnDrawLine_Click(object sender, EventArgs e)
{
    //创建一个画图图面
    Graphics g = this.CreateGraphics();
    //创建一只笔
    Pen pen = new Pen(Brushes.Red);
    //直线的两个坐标
    Point pointStart = new Point(10, 10);
    Point pointEnd = new Point(50, 50);
    //开始画
    g.DrawLine(pen, pointStart, pointEnd);
}

2.画一个矩形

复制代码 代码如下:
private void btnDrawRectangle_Click(object sender, EventArgs e)
{
    //创建一个画图图面
    Graphics g = this.CreateGraphics();
    //创建一只笔
    Pen pen = new Pen(Brushes.DeepSkyBlue);
    //确定矩形的起点、长和高
    g.DrawRectangle(pen, 50, 50, 60, 30);
}

3.画一个字符串

复制代码 代码如下:
private void btnDrawString_Click(object sender, EventArgs e)
{
    Graphics g = this.CreateGraphics();
    Font font = new Font("华为宋体", 12);
    //Point一样,只是值是浮点类型
    PointF point = new PointF(50, 50);
    g.DrawString("我是Kimisme", font, Brushes.Coral, point);
}

4.画一个扇形

复制代码 代码如下:
private void btnDrawSector_Click(object sender, EventArgs e)
{
    Graphics g = this.CreateGraphics();
    g.DrawPie(new Pen(Brushes.Green),
        new Rectangle(new Point(100, 70),
            new Size(50, 50)), 60, 90);
}

更多精彩内容其他人还在看

C# SendInput 模拟鼠标操作的实现方法

C# SendInput 模拟鼠标操作的实现方法,需要的朋友可以参考一下
收藏 0 赞 0 分享

C#中 paint()与Onpaint()的区别

paint是事件onpaint方法onpaint方法是调用paint事件的,用哪一个,效果是一样,就看那一个方便了内部是这样实现的:
收藏 0 赞 0 分享

c#中GetType()与Typeof()的区别

c#中GetType()与Typeof()的区别,需要的朋友可以参考一下
收藏 0 赞 0 分享

将字符串转换成System.Drawing.Color类型的方法

将字符串转换成System.Drawing.Color类型的方法,需要的朋友可以参考一下
收藏 0 赞 0 分享

C# 抓取网页内容的方法

C# 抓取网页内容的方法,需要的朋友可以参考一下
收藏 0 赞 0 分享

基于C#后台调用跨域MVC服务及带Cookie验证的实现

本篇文章介绍了,基于C#后台调用跨域MVC服务及带Cookie验证的实现。需要的朋友参考下
收藏 0 赞 0 分享

使用C#获取远程图片 Form用户名与密码Authorization认证的实现

本篇文章介绍了,使用C#获取远程图片 Form用户名与密码Authorization认证的实现。需要的朋友参考下
收藏 0 赞 0 分享

Winform跨线程操作的简单方法

线程间操作无效:从不是创建控件“label1”的线程访问它
收藏 0 赞 0 分享

C# WINFORM 强制让窗体获得焦点的方法代码

C# WINFORM 强制让窗体获得焦点的方法代码,需要的朋友可以参考一下
收藏 0 赞 0 分享

C#中方括号[]的语法及作用介绍

C#中方括号[]可用于数组,索引、属性,更重要的是用于外部DLL类库的引用。
收藏 0 赞 0 分享
查看更多