`
流星剑
  • 浏览: 91801 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

.net绘图操作二

    博客分类:
  • .net
阅读更多

1.4 Brush

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

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

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对象,这种对象使用图像来填充形状的内部,用户可以设置填充的方式。下表例举了常的方法和属性。

 

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

 // 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用于定义特定的文本格式,包括字体、字号和字形属性。

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

 

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

 

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

 

1.6 Image

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

 

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类型的参数,可以的值如下表。

 

比如:

 

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);

 

 

 

 

分享到:
评论

相关推荐

    ASP.NET操作echarts

    使用ASP.NET与echarts进行数据交互,利用C#中的ASP.NET作为后台产生数据,通过Ajax作为前端定时与后端进行数据交互

    .NET打印操作实例--使用GDI绘图打印学生信息源码(包括文字、控件、图片)

    .NET打印操作实例--使用GDI绘图打印学生信息源码(包括文字、控件、图片)

    利用.NET绘图技术制作水晶按钮控件

    最后还得记着释放设备指针等一系列内存清理操作,现在有了.Net类库,我们只需在控件的OnPaint事件中通过e.Graphics返回Graphics对象,然后创建一个自定义的刷子对象Brush来填充Graphics表面,再创建一个Region对象...

    Windows窗体的.Net框架绘图技术实现方法

    本文实例讲述了Windows窗体的.Net框架绘图技术实现方法,非常实用,具体内容如下: 一般来说,当编写一个典型的Windows 窗体程序时,窗体和控件的绘制、效果等操作是不需要特别加以考虑的。这是为什么呢?因为通过...

    Diagram.NET思维导图与流程图绘制工具(C#)

    1.Diagram.NET是一个简单实用的绘图工具,可以绘制指定形状的节点并用线条连接它们,同时也可以设置节点上显示的文字。 2.Diagram.NET以控件的形式调用,目前支持普通矩形,椭圆形,便签和节点矩形以及节点椭圆形。...

    asp.net技术内幕(1)

    第一部分 使用ASP.NET Web表单 <br>第1章 建立ASP.NET页面 <br>1.1 ASP.NET和.NET框架 1.1.1 .NET框架类库 1.1.2 理解名称空间 1.1.3 标准的ASP.NET名称空间 1.1.4 与.NET框架兼容的语言 ...

    VB.NET自制的看图工具软件.rar

    你可以通过这个小程序了解一些VB.NET与图片之间的操作技巧,另外还可以学习到窗口对话框的一些基本操作、PictureBox控件用法、目录和文件列表框的使用、处理鼠标事件、偏移量计算图片位置,重画图片、绘图画面,颜色...

    ASP.NET 3.5 开发大全

    15.1.4 .NET Framework绘图类 15.2 图形编程 15.2.1 Graphics类 15.2.2 绘制基本图形 15.2.3 图形绘制实例 15.3 绘制文字特效 15.3.1 投影特效 15.3.2 倒影特效 15.3.3 旋转特效 15.4 绘制图片 15.4.1 载入图像文件 ...

    精通.Net核心技术高级特性.part2

    主要介绍最实用的高级技术,包括远程处理、互操作、正则表达式、GDI 十绘图、ADO.NET等。远程处理为开发.NET中的分布式应用提供了全面的解决方案。互操作提供了.NET和传统DLL、COM、COM十的互操作,它们为应用程序...

    .Net.Framework3.5开发技术详解[中文][共二卷][PDF][VOL2]

    1.2 .NET3.5各部分的功能 2 1.3 .NET3.5的组件 3 1.3.1 WindowsPresentaionFoundation(WPF) 3 1.3.2 WindowsCommunicationFoundation(WCF) 5 1.3.3 WorkflowFoundation(WF) 6 1.4 搭建.NET3.5的开发环境 6 1.4.1 在...

    ASP.NET3.5从入门到精通

    15.1.4 .NET Framework 绘图类 15.2 图形编程 15.2.1 Graphics 类 15.2.2 绘制基本图形 15.2.3 图形绘制实例 15.3 绘制文字特效 15.3.1 投影特效 15.3.2 倒影特效 15.3.3 旋转特效 15.4 绘制图片 15.4.1 载入图像...

    VectorControl.Net,专业矢量图形二次开发控件

    二维变换,支持缩放、扭曲、平移和旋转等二维变换,并可以启用或禁用这些操作。> 图形的成组和解组> 图形的层次调整> 支持多个图形之间的对齐> 支持多个图形之间的分布功能> 调整多个图形的尺寸以达到相同高度或宽度...

    windows mobile GDI 屏幕绘图基础

    之前在做手机UI时在网上找到的资料,是多普达软件研发经理Talingfu编写的,主要讲解了:基本文本操作,基本图形图像操作和高级屏幕绘图

    ASP.NET 3.5 开发大全word课件

    15.1.4 .NET Framework绘图类 15.2 图形编程 15.2.1 Graphics类 15.2.2 绘制基本图形 15.2.3 图形绘制实例 15.3 绘制文字特效 15.3.1 投影特效 15.3.2 倒影特效 15.3.3 旋转特效 15.4 绘制图片 15.4.1 载入图像文件 ...

    ASP.NET.4揭秘

    20.4.2 使用entitybase类执行标准数据访问操作762 20.4.3 用entitybase类执行验证764 20.5 小结768 第21章 包含wcf数据服务的数据访问769 21.1 wcf数据服务概述769 21.2 使用包含service reference的数据服务770 ...

    ASP.NET 3.5 开发大全11-15

    15.1.4 .NET Framework绘图类 15.2 图形编程 15.2.1 Graphics类 15.2.2 绘制基本图形 15.2.3 图形绘制实例 15.3 绘制文字特效 15.3.1 投影特效 15.3.2 倒影特效 15.3.3 旋转特效 15.4 绘制图片 15.4.1 载入图像文件 ...

    ASP.NET 3.5 开发大全1-5

    15.1.4 .NET Framework绘图类 15.2 图形编程 15.2.1 Graphics类 15.2.2 绘制基本图形 15.2.3 图形绘制实例 15.3 绘制文字特效 15.3.1 投影特效 15.3.2 倒影特效 15.3.3 旋转特效 15.4 绘制图片 15.4.1 载入图像文件 ...

    《VC++.NET精彩百例》配套代码

    [涉及平台] VC++.NET [作者] void [文件大小] 2969KB [更新日期] 2005-10-30 <br/>一、资源说明 <br/>第1章 界面编程 实例1 "欢迎"界面 实例2 动态字幕效果 实例3 透明窗体 ...

    .Net.Framework3.5开发技术详解[中文][PDF][VOL1]

    1.2 .NET3.5各部分的功能 2 1.3 .NET3.5的组件 3 1.3.1 WindowsPresentaionFoundation(WPF) 3 1.3.2 WindowsCommunicationFoundation(WCF) 5 1.3.3 WorkflowFoundation(WF) 6 1.4 搭建.NET3.5的开发环境 6 1.4.1 在...

Global site tag (gtag.js) - Google Analytics