首页 > 技术文章 > GDI+绘图基础

fsspring 2018-08-22 13:52 原文

GDI+

指的是.NET Framwork中提供的二维图像、图像处理等功能,是构成Windows操作系统的一个子系统,它提供了图形图像操作的应用程序编程接口(API)。

  • 使用GDI+可以用相同的方式在屏幕或打印机上显示信息,而无须考虑特定显示设备的细节。
  • GDI+类提供程序员用以绘制的方法,这些方法随后会调用特定设备的驱动程序。
  • GDI+将应用程序与图形硬件分隔,使程序员能够创建与设备无关的应用程序。
  • GDI+主要用于在窗体上绘制各种图像图像,可以用于绘制各种数据图形、数学仿真等。
  • GDI+可以在窗体程序中产生很多自定义的图形,便与开发人员展示各种图形化的数据。

创建Graphics对象(也称为画布对象)

1. 在Paint事件中创建Graphics对象。

Private Void Form1_Paint(object sender, PaintEventArgs e)
{
      Graphics g=e.Graphics;  

}

2. 在窗体的Load事件中,通过CreateGraphics方法创建Graphics对象。

private Void Form1_Load(object sender, EventArgs e)
{
    Graphics g;
    g=this.CreateGraphics();
}

3. 在窗体的Load事件中,通过FormImage方法创建Graphics对象。

private void Form1_Load(object sender, EventArgs e)
{
    Bitmap mbit=new bitmap (@"C:\ls.bmp");
    Graphics g=Graphics.FromImage(mbit);
}


另,Graphics类和Bitmap类的区别:

不可能直接在 Bitmap 对象上画图的,只能先取得这个 Bitmap 的 Graphics 对象,然后在这个 Graphics 对象上操作。

Bitmap 封装 GDI+ 位图(注意:位图),是用于处理由像素数据定义的图像的对象。
Graphics 封装一个 GDI+ 绘图(注意:绘图),图面提供将对象绘制到显示设备的方法。

通俗点儿说,前者是绘画作品,后者才是真正绘画时用到的东西(比如刷子、颜料等等),两者完全不同。

 

推荐阅读