C#图形设计(GDI+)(一)

一、前言

本篇博文主要介绍在C#.NET中如何绘制基本图形,包括画笔、画刷等基本绘图工具的创建和使用方法、空心图形和填充图形以及文本的绘制方法。

二、绘图概述

1.

GDI+中的各种类大都包含在命名空间System.Drawing中,其中最常用的是Graphics类。

2.绘图的基本知识

①像素

像素是构成图像的基本单元,也是计算机屏幕上所能显示的最小单位。像素可以衡量屏幕的分辨率,可以定位屏幕上的位置,也可以定义屏幕的长度和宽度。每个独立的像素都由红、绿、蓝三个分量组成。

②颜色

在GDI+中,颜色是由32位的Color结构体来表示的,该结构体有四个分量,即Alpha分量(A)、Red分量(R)、Green分量(G)和Blue分量(B),这种表示方式称为ARGB模式。

每个分量的取值范围为0~255,Alpha分量表示颜色的透明度,Red分量为红色分量,Green分量为绿色分量,Blue分量为蓝色分量。

Color结构体有一些静态成员属性,Color.Red表示黑色,Color.Green表示绿色,Color.Blue表示蓝色。

除了调用Color结构体的这些静态成员属性获得指定的颜色外,还可以调用Color类的FromArgb()方法从四个分量(A、R、G、B)创建一种颜色,该方法的用法如下:

Color.FromArgb([A,] R,G,B);

其中A为透明度,值越小,越透明。R、G、B为颜色参数,取值范围0~255。

Color.FromArgb(128,255,0,0); //得到半透明的红色
③座标系

座标系统是图形程序设计中一个重要的部分。默认座标系的原点是在左上角,x轴指向右方,y轴指向下方。

3.GDI+简介

GDI+(Graphics Device Interface Plus)是微软在Windows 2000以后的操作系统中提供的新的图形设备接口。

GDI+主要提供了绘制二维矢量图形的类,还提供了文字显示的功能。

4.Graphics类

Graphics类是一个封装了GDI+绘图的图面,提供将对象绘制到显示设备的方法。

画图方法都被包括在Graphics类中,在画任何对象(如Circle、Rectangle)时,我们首先要创建一个Graphics类实例。这个实例相当于建立了一块画布,有了画布,才可以用各种画图方法进行绘图。

①创建Graphics对象

通常可以使用下述两种方法来创建一个Graphics对象。

(1)利用控件或窗体的Paint事件中的PainEventArgs

在窗体或控件的Paint事件中接收对图形对象的引用,作为PaintEventArgs(PaintEventArgs指定绘制控件所用的Graphics)的一部分,在为控件创建绘制代码时,通常会使用此方法来获取对图形对象的引用。例如:

//窗体的Paint事件的响应方法
private void form1_Paint(object sender,PaintEventArgs e)
{
    Graphics g=e.Graphics;
}

也可以直接重载控件或窗体的OnPaint方法(该事件在重绘控件或窗体时发生),具体代码如下:

protected override void OnPaint(PaintEventArgs e)
{
    Graphics g=e.Graphics;
}

(2)调用某控件或窗体的CreateGraphics方法

调用某控件或窗体的CreateGraphics方法以获取对Graphics对象的引用,该对象表示该控件或窗体的绘图图面。

如果想在已存在的窗体或控件上绘图,通常会使用此方法。例如:

Graphics g=this.CreateGraphics();

②Graphics常用绘图方法

有了一个Graphics的对象引用后,就可以利用该对象的成员方法进行各种各样图形的绘制。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章