CWinForm实践开发教程chp图型图像GDI编程.ppt
文本预览下载声明
--------------基于C#语言 主讲教师:钱 哨 本课学时:72课时 联系方式:qianshao@bjjtxy.bj.cn 第四章、图型图像GDI编程 了解System. Drawing 命名空间 掌握矢量图形和绘制对象 可以绘制简单的几何图形 掌握图像的基本处理技术 4.1 什么是GDI+ 4.2 System. Drawing 命名空间 4.2 System. Drawing 命名空间 4.2 System. Drawing 命名空间 4.3 Graphics类别简介 4.3 Graphics类别简介 4.3 Graphics类别简介 4.4 Pen类别简介 4.4 Pen类别简介 4.4 Pen类别简介 4.4 Pen类别简介 4.4 Pen类别简介 4.4 Pen类别简介 4.4 Pen类别简介 4.5 Brush类别简介 4.5 Brush类别简介 4.5 Brush类别简介 4.5 Brush类别简介 4.5 Brush类别简介 4.5 Brush类别简介 4.6 Font类 4.7 坐标平移与缩放 4.7 坐标平移与缩放 4.8 绘制图形 4.8 绘制图形 4.8 绘制图形 4.8 绘制图形 4.9 绘制图形 * Windows程序设计 本章主要内容介绍4.1 繪圖的基本觀念4.2 繪圖屬性與方法4.3 繪圖相關類別 CONTENT 本章学习目标: 首先先了解什么是 GDI 呢?GDI 是从 Windows 95 到 Windows 2000 随附的旧版绘图装置接口 (Graphics Device Interface), 是属于绘图方面的 API (Application Programming Interface)。因为应用程序不能直接控制硬件, 所以当我们要进行绘图的动作时, 必须透过 GDI 才能完成。 那 GDI+ 又是什么呢?GDI+ 是 GDI 的后续产品, 是一种绘图装置接口, 可将应用程序和绘图硬件分隔, 让我们能够撰写与装置无关的应用程序。它可以让我们不需注意特定显示装置的详细数据, 便可在屏幕或打印机显示信息。我们可以呼叫 GDI+ 类别所提供的方法, 然后这些方法会适当地呼叫特定的装置驱动程序, 而完成绘图。 System.Drawing 命名空间包含许多基本与进阶的绘图类别, 供程序开发者来完成各种绘图功能。本章在此仅介绍 System.Drawing 命名空间中一些常用的绘图类别。 在「GDI+」中所采用的坐标系统,与平时人们较常用的坐标系统不同,主要差别在于,一般的二维坐标系,x轴与y轴分别是往右往上递增(左图),而「GDI+」所采用的坐标系,x轴与y轴则分别是往右往下递增(右图) 1、坐标系统 在数学定义中,坐标上的最基本元素:「点」,其实是个长度与宽度都无穷小的概念单位,但是在计算器图学中,作画的最基本元素是「像素(pixel)」 当我们的屏幕分辨率设定为1024*768时,表示在x轴横坐标总共可以画1024个「像素」,在y轴纵坐标总共可以画768个「像素」 2、绘图基本单位 Graphics 类别是 GDI+ 的核心, 若要绘制任何图形, 都需要先取得 Graphics对象, 设定它的属性, 呼叫它的方法来完成绘图的工作。由于 Graphics 类别并未公开其建构子, 故无法以建构子来建立一个 Graphics 对象, 而是要从您所要绘图的组件取得一个 Graphics 对象, 其语法如下: Graphics g = 物件.CreateGraphics; 以上叙述中的对象可为窗体 (Form) 及 Control 类别的衍生类别 (例如, Label, PictureBox 及TextBox 等...), 当上述对象呼叫 CreateGraphics 方法后, 会传回一个Graphics 对象, 您可利用此一 Graphics 对象在建立它的对象上绘图。例如以下叙述可取得窗体的 Graphics 对象。 Graphics g = this.CreateGraphics; private void Form10_Paint(object sender, PaintEventArgs e) { Graphics g = e.Graphics; } 1、在FORM的Paint方法中创建 2、直接创建 public Form10() { InitializeComponent(); Graphics g;
显示全部