Visual Basic.NET程序设计教程 陈语林 p11新.ppt
文本预览下载声明
第十一章 图形应用程序开发 11.1 什么是GDI+ GDI+为图形函数提供了一个新的API,以便于充分利用Windows图形库,且以继承类的方式来完成图像处理,所以使用起来更加方便。 GDI+函数位于System.Drawing命名空间中,这个命名空间中的一些类和成员对使用Win32GDI函数的开发人员来说非常熟悉,类可以用于如下选项:画笔、画刷和矩形。 在System.Drawing命名空间中包含的类非常丰富 ,列举如下: 位图的处理。 Cursors类,包括在应用程序中需要设置的各种光标,例如沙漏或插入文本的I形光标。 Font类,包括字体旋转等功能。 Graphics类,包含完成一般绘图的方法,如直线、曲线、椭圆等。 Icon类,处理图形的各种结构,包括Point,Size,Color和Rectangle。 Pen和Brush类。 11.2 使用GDI+ 11.2.1 System.Drawing.Graphics类 该类中的40多种方法提供了与绘图相关的函数。 11.2.2 System.Drawing.Drawing2D命名空间 增加了二维矢量绘图功能。 11.2.3 System.Drawing.Imaging命名空间 包括处理各种图像格式的功能。 11.2.4 System.Drawing.Text命名空间 增加了操纵字体的功能。 11.2.5 对VB6及早期版本的更改 11.3 创建图形应用程序 11.3.1 创建一个简单的图形应用程序 【例11-1】这里先给出一个简单的图形应用程序 。 Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click Dim g1 As Graphics Dim g2 As Graphics g1 = Me.CreateGraphics() g2 = PictureBox1.CreateGraphics Dim fntFont As Font fntFont = New Font(隶书, 20, FontStyle.Underline) Dim b As Brush b = New SolidBrush(Color.Green) Dim p As Pen p = New Pen(Color.Blue) g1.DrawString(你好,GDI+!, fntFont, b, 0, 10) g2.DrawEllipse(p, 0, 0, 50, 50) g2.DrawRectangle(p, 65, 0, 20, 20) g2.DrawIcon(Me.Icon, 90, 20) Dim pntPoint(2) As Point pntPoint(0).X = 120 pntPoint(0).Y = 10 pntPoint(1).X = 170 pntPoint(1).Y = 10 pntPoint(2).X = 150 pntPoint(2).Y = 50 g2.FillPolygon(b, pntPoint) fntFont.Dispose() b.Dispose() p.Dispose() g1.Dispose() g2.Dispose() End Sub 11.3.2 创建图形应用程序的基本步骤 ⑴ 声明Graphics对象。 ⑵ 创建画布 。 ⑶ 创建画笔、画刷、字体等绘图工具 ⑷ 绘制 ⑸ 释放Graphics对象,调用Dispose方法 11.4 利用GDI+为应用程序增加亮点 11.4.1 反走样(抗锯齿)、渐变填充的实现 GDI+的一个重要的命名空间是System.Drawing.Drawing2D,要实现反走样和渐变填充,必须引用该命名空间: Imports System.Drawing.Drawing2D 设置反走样是通过属性SmoothingMode来实现的,实现代码如下: g1.SmoothingMode=SmoothingMode.AntiAlias
显示全部