第4 图形图像和多媒体编程
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
了当前窗体或控件的Graphics对象,在为窗体或控件创建 绘制代码时,一般使用此方法来获取对图形对象的引用。 Private void Form_Paint(object sender, PaintEventArgs e) { Graphics g=e.Graphics; …… }
一、Graphics对象的创建
画笔Pen类的构造函数有四种,使用方法如下。
(1)创建某一颜色的Pen对象:public Pen(Color)
(2)创建某一刷子样式的Pen对象:public Pen(Brush)
(3)创建某—刷子样式并具有相应宽度的Pen对象:public
Pen(Brush,float)
(4)创建某一颜色和相应宽度的Pen对象:public Pen(Color,float)
三、画刷(Brush)的使用
2.HatchBrush画刷 类似于 SolidBrush,但是可以利用该类从大量预设的图案中
选择绘制时要使用的图案,而不是纯色。 3.LinearGradientBrush画刷 使用两种颜色渐变混合的进行绘制。LinearGradientBrush类
的构造函数有多种格式,最常用的格式如下。
下面的示例说明如何创建一支基本的蓝色画笔对象:
Pen myPen = new Pen(Color.Blue);
Pen myPen = new Pen(Color.Blue, 10.5f);//兰颜色和宽度10.5的Pen 对象
也可以从画刷对象创建画笔对象,例如:
SolidBrush myBrush = new SolidBrush(Color.Red);
4.1.1 WindowsApplication_LinearGradientBrush
4.1.2 在窗体上显示 直线、矩形、椭圆
所有绘制图形的方法都位于Graphics类中。利用这些方法可 以画简单几何图形。
一、直线 有两种绘制直线的方法:DrawLine()方法和DrawLines()方法。
DrawLine()用于绘制一条直线,DrawLines()用于绘制多 条直线。 [格式1]: public void DrawLine(Pen pen,int x1,int y1,int x2,int y2) 其中x1,y1为起点坐标,x2,y2为终点坐标。例如: e.Graphics.DrawLine(blackPen, 100,100,200,100);
2.从当前窗体或控件获取对Graphics对象的引用 把当前窗体的画刷、字体、颜色作为缺省值获取对Graphics
对象的引用,注意这种对象只有在处理当前Windows窗口 消息的过程中有效。如果想在已存在的窗体或控件上绘图, 可以使用此方法。例如: Graphics g=this.pictureBox1.CreatGraphics(); ……
4.1 GDI+ 编程
Visual C#.Net引入了GDI+,它是由GDI(图形设备 接口Graphics Device Interface)演变而来的,具 有比GDI更强大的功能而且简化了程序员的编程 工作。所以开发者运用GDI+,就可以很方便的开 发出具有强大图形图像功能的应用程序了。
在Visual C#.Net中,所有图形图像处理功能都包含 在以下命名空间下:
效果实际上是通过二维(2D)的图案体现的。 ystem.Drawing.Drawing2D命名空间提供了高级的二维和 矢量图形功能。主要有梯度型画刷、Matrix类(用于定义 几何变换)和GraphicsPath类等。
3. System.Drawing.Imaging命名空间 提供了高级 GDI+ 图像处理功能。
3.从继承自图像的任何对象创建Graphics对象。 此方法在需要更改已存在的图像时十分有用。例如: Bitmap bitmap=new Bitmap(@"C:\test\a1.bmp"); Graphics g=Graphics.FromImage(bitmap);
二、画笔(Pen)的使用
画笔可用于绘制绘制具有指定宽度和样式的直线、曲线或轮廓形状。
1. System.Drawing命名空间 提供了对GDI+基本图形功能的访问,主要有
Graphics类、Bitmap类、从Brush类继承的类、 Font类、Icon类、Image类、Pen类、Color类等。
4.1 GDI+ 编程
2. System.Drawing.Drawing2D命名空间 Visual C#.Net中没有3D命名空间,这是因为三维(3D)的
画刷(Brush)类是一个抽象类,本身不能实例化。一般使 用它的派生类。主要有以下几种不同类型的画刷Brush派 生类:
1.SolidBrush画刷 SolidBrush类用来定义单一颜色的Brush,用纯色进行绘制。
其构造函数如下。 public SolidBrush(Color.Color) 例如: SolidBrush MyBrush=new SolidBrush(Color.Blue); 该语句创建了一个名为MyBrush的蓝色画刷。
4. System.Drawing.Text命名空间 提供了高级 GDI+ 字体和文本排版功能。
4.1.1 Graphics对象和画笔画刷
要进行图形处理,必须首先创建Graphics对象,然后才能利 用它进行各种画图操作。
一、Graphics对象的创建 创建Graphics对象的形式有: 1.在窗体或控件的Paint事件中直接引用Graphics对象 每一个窗体或控件都有一个Paint事件,该事件的参数中包含
public LinearGradientBrush(Point1, Point2, Color1, Color2); 4.TextureBrush 画刷 使用纹理(如图像)进行绘制。TextureBrush类允许使用一 幅图像作为填充的样式。
4.1.1 WindowsApplication_TextureBrush
Pen Pen
myPen myPen
= =
nБайду номын сангаасw new
Pen(myBrush);
Pen(myBrush, 5);4.1.1
画笔的用法演示示例
WindowsApplication_4-1
三、画刷(Brush)的使用
画刷是可与Graphics对象一起使用来创建实心形状和呈现文 本的对象。可以用画刷填充各种图形形状,如矩形、椭圆、 扇形、多边形和封闭路径等。
一、Graphics对象的创建
画笔Pen类的构造函数有四种,使用方法如下。
(1)创建某一颜色的Pen对象:public Pen(Color)
(2)创建某一刷子样式的Pen对象:public Pen(Brush)
(3)创建某—刷子样式并具有相应宽度的Pen对象:public
Pen(Brush,float)
(4)创建某一颜色和相应宽度的Pen对象:public Pen(Color,float)
三、画刷(Brush)的使用
2.HatchBrush画刷 类似于 SolidBrush,但是可以利用该类从大量预设的图案中
选择绘制时要使用的图案,而不是纯色。 3.LinearGradientBrush画刷 使用两种颜色渐变混合的进行绘制。LinearGradientBrush类
的构造函数有多种格式,最常用的格式如下。
下面的示例说明如何创建一支基本的蓝色画笔对象:
Pen myPen = new Pen(Color.Blue);
Pen myPen = new Pen(Color.Blue, 10.5f);//兰颜色和宽度10.5的Pen 对象
也可以从画刷对象创建画笔对象,例如:
SolidBrush myBrush = new SolidBrush(Color.Red);
4.1.1 WindowsApplication_LinearGradientBrush
4.1.2 在窗体上显示 直线、矩形、椭圆
所有绘制图形的方法都位于Graphics类中。利用这些方法可 以画简单几何图形。
一、直线 有两种绘制直线的方法:DrawLine()方法和DrawLines()方法。
DrawLine()用于绘制一条直线,DrawLines()用于绘制多 条直线。 [格式1]: public void DrawLine(Pen pen,int x1,int y1,int x2,int y2) 其中x1,y1为起点坐标,x2,y2为终点坐标。例如: e.Graphics.DrawLine(blackPen, 100,100,200,100);
2.从当前窗体或控件获取对Graphics对象的引用 把当前窗体的画刷、字体、颜色作为缺省值获取对Graphics
对象的引用,注意这种对象只有在处理当前Windows窗口 消息的过程中有效。如果想在已存在的窗体或控件上绘图, 可以使用此方法。例如: Graphics g=this.pictureBox1.CreatGraphics(); ……
4.1 GDI+ 编程
Visual C#.Net引入了GDI+,它是由GDI(图形设备 接口Graphics Device Interface)演变而来的,具 有比GDI更强大的功能而且简化了程序员的编程 工作。所以开发者运用GDI+,就可以很方便的开 发出具有强大图形图像功能的应用程序了。
在Visual C#.Net中,所有图形图像处理功能都包含 在以下命名空间下:
效果实际上是通过二维(2D)的图案体现的。 ystem.Drawing.Drawing2D命名空间提供了高级的二维和 矢量图形功能。主要有梯度型画刷、Matrix类(用于定义 几何变换)和GraphicsPath类等。
3. System.Drawing.Imaging命名空间 提供了高级 GDI+ 图像处理功能。
3.从继承自图像的任何对象创建Graphics对象。 此方法在需要更改已存在的图像时十分有用。例如: Bitmap bitmap=new Bitmap(@"C:\test\a1.bmp"); Graphics g=Graphics.FromImage(bitmap);
二、画笔(Pen)的使用
画笔可用于绘制绘制具有指定宽度和样式的直线、曲线或轮廓形状。
1. System.Drawing命名空间 提供了对GDI+基本图形功能的访问,主要有
Graphics类、Bitmap类、从Brush类继承的类、 Font类、Icon类、Image类、Pen类、Color类等。
4.1 GDI+ 编程
2. System.Drawing.Drawing2D命名空间 Visual C#.Net中没有3D命名空间,这是因为三维(3D)的
画刷(Brush)类是一个抽象类,本身不能实例化。一般使 用它的派生类。主要有以下几种不同类型的画刷Brush派 生类:
1.SolidBrush画刷 SolidBrush类用来定义单一颜色的Brush,用纯色进行绘制。
其构造函数如下。 public SolidBrush(Color.Color) 例如: SolidBrush MyBrush=new SolidBrush(Color.Blue); 该语句创建了一个名为MyBrush的蓝色画刷。
4. System.Drawing.Text命名空间 提供了高级 GDI+ 字体和文本排版功能。
4.1.1 Graphics对象和画笔画刷
要进行图形处理,必须首先创建Graphics对象,然后才能利 用它进行各种画图操作。
一、Graphics对象的创建 创建Graphics对象的形式有: 1.在窗体或控件的Paint事件中直接引用Graphics对象 每一个窗体或控件都有一个Paint事件,该事件的参数中包含
public LinearGradientBrush(Point1, Point2, Color1, Color2); 4.TextureBrush 画刷 使用纹理(如图像)进行绘制。TextureBrush类允许使用一 幅图像作为填充的样式。
4.1.1 WindowsApplication_TextureBrush
Pen Pen
myPen myPen
= =
nБайду номын сангаасw new
Pen(myBrush);
Pen(myBrush, 5);4.1.1
画笔的用法演示示例
WindowsApplication_4-1
三、画刷(Brush)的使用
画刷是可与Graphics对象一起使用来创建实心形状和呈现文 本的对象。可以用画刷填充各种图形形状,如矩形、椭圆、 扇形、多边形和封闭路径等。