首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > 编程 >

.net绘图操作2

2012-12-22 
.net绘图操作二1.4 BrushBrush通常被称为,用于定义填充图形形状(如矩形、椭圆、饼形、多边形和封闭路径)的内

.net绘图操作二

1.4 Brush

Brush通常被称为,用于定义填充图形形状(如矩形、椭圆、饼形、多边形和封闭路径)的内部对象。Brush是一个抽象基类,不能进行实例化。若要创建一个画笔对象,需使用从Brush派生出的类,如SolidBrushTextureBrushLinearGradientBrush

SolidBrush类用于定义单色画笔。画笔用于填充图形形状,如矩形、椭圆、扇形、多边形和封闭路径。下表列举了常用的方法和属性。

.net绘图操作2

System.Drawing.Brushes定义了很多标准笔刷,用户可以直接定义一个蓝色笔刷。

?

System.Drawing.Brush brush = System.Drawing.Brushes.Blue;

?

当然,用户也可以自定义画笔

// 定义一个红色笔刷System.Drawing.Brush brush = new System.Drawing.SolidBrush(System.Drawing.Color.Red);

?

?

?

TextureBrush类的每个属性都是Brush对象,这种对象使用图像来填充形状的内部,用户可以设置填充的方式。下表例举了常的方法和属性。

?

.net绘图操作2

下面的代码示例演示了用图形填充区域的用法。

 // Brush图片        string brushfile = Server.MapPath("~/y.jpg");        // 被填充的图片        string file = Server.MapPath("~/004.jpg");        // 声明TextureBrush对象        System.Drawing.Image brushimg = System.Drawing.Image.FromFile(brushfile);        System.Drawing.TextureBrush texture = new System.Drawing.TextureBrush(brushimg);        texture.WrapMode = System.Drawing.Drawing2D.WrapMode.Tile;        System.Drawing.Image img = System.Drawing.Image.FromFile(file);        System.Drawing.Graphics g = System.Drawing.Graphics.FromImage(img); // 创建Graphics对象        g.FillEllipse(texture, new System.Drawing.RectangleF(10.0f, 10.0f, 100, 50)); // 用图形填充        g.Dispose();       // img.Dispose();        // 原书中没有这句,这里要加上这句,如果不加这句则在非IE浏览器显示不出        Response.ContentType = "image/JPEG";        // 将图形加载到Response中        img.Save(Response.OutputStream, System.Drawing.Imaging.ImageFormat.Jpeg);

?

1.5 Font

Font用于定义特定的文本格式,包括字体、字号和字形属性。

下表列举了常用方法和属性。

.net绘图操作2

.net绘图操作2

?

下面这行代码将构建一个10磅大小的宋体字体。

?

System.Drawing.Font f1 = new System.Drawing.Font("宋体",10);

?

1.6 Image

Image是为源自BitmapMetafile的类提供功能的抽象基类。下表列举了常用的方法和属性。

.net绘图操作2

?

Image不可以实例化,但可以通过方法来构造:

System.Drawing.Image img1 = System.Drawing.Image.FromFile(Server.MapPath("~/logo.gif"));

?

Image是基类,封装了很多有用的属性和方法,而实际运用时,尤其在生成或者修改图像的时候,一般用其派生类Bitmap表示内存中的图形。Bitmap是用于处理由像素数据定义的图像的对象,是图像处理开发中最常用的对象。用户可以通过多种途径构造Bitmap对象。

System.Drawing.Bitmap bmp1 = new System.Drawing.Bitmap(Server.MapPath("~/logo.gif")); // 通过文件构造System.Drawing.Bitmap bmp2 = new System.Drawing.Bitmap(300,200); // 构造一个宽300,高200的对象

?

构造完对象后,可以调用其方法进行操作,比如RotateFlip方法可以实现图像反转,该方法接收RotateFlipType类型的参数,可以的值如下表。

.net绘图操作2

?

比如:

?

System.Drawing.Bitmap bmp1 = new System.Drawing.Bitmap(Server.MapPath("~/logo.gif")); // 通过文件构造bmp1.RotateFlip(System.Drawing.RotateFlipType.Rotate90FlipX); // 水平翻转90度旋转// 原书中没有这句,这里要加上这句,如果不加这句则在非IE浏览器显示不出Response.ContentType = "image/JPEG";bmp1.Save(Response.OutputStream, System.Drawing.Imaging.ImageFormat.Jpeg);

?

?

?

?

热点排行