欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

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

程序员文章站 2022-11-24 08:50:12
废话不多说,我们先来认识一下这个gdi+,看看它到底长什么样。 gdi+:graphics device interface plus也就是图形设备接口,提供了各种丰富的...

废话不多说,我们先来认识一下这个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);
}