当前位置: 首页 > 图文教程 > 网络编程 > ASP.NET > ASP.NET实现数据图表b

ASP.NET
ASP.NET FORUMS换肤流程
关于webservice的异步调用简单实例
nhibernate数据加载之Criteria加载
C# 把指定控件显示在最上面
VB面向对象编程的一个简单的演示程序
关于如何利用COM+,来提高ASP执行权限的问题!
ASP.NET跨应用程序进行登录的解决
在快捷方式的右键菜单上添加打开所在目录的菜单项
XML简明教程(一)
使用自定义的数据源进行DataGrid控件的数据绑定
提供两种散列加密算法:MD5、SHA1。大小写敏感
把鼠标放在Form的边缘上不会出现可拉动
The custom tool 'CrystalDecisions.VSDesigner.CodeGen.ReportCodeGenerator' failed
Split的用法
利用XSD生成強類型類文件和描述文件
关于datagrid中的字符串转换
C#中来应用Hook
Get your Crystal report working on your customers server (Cannot find Keycod...
C#中如何插入照片到Excel
.net中Web自定义控件编写注意事项

ASP.NET实现数据图表b


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-11-03   浏览: 33 ::
收藏到网摘: n/a

3) 如何在图片上实现画线和写字: 在图片上写字是通过产生的"Graphic"对象的DrawString ( )方法来实现的,在调用此方法前,必须设置字体和刷子,具体调用方法是:
public void DrawString ( string s ,Font font ,Brush brush ,float x ,float y) ;"s"是要输出的字符串,"font"是字符串的字体,"brush"是定义刷子,后面二个参数是产生字符串的位置坐标。在程序中产生字符串的具体语句如下:Font axesFont = new Font ( "arial" , 10 ) ;Brush blackBrush = new SolidBrush ( Color . Red ) ;g . DrawString ( "在图片上面写入文字,呵呵" , axesFont , blackBrush , 90 , 20 ) ;    要在图片上画线要使用到"Graphic"对象的DrawLine ( )方法,具体的使用语法如下:public void DrawLines (Pen pen ,Point [ ] points) ;  其中"points"是定义点的位置,当然你也可以使用本文中使用的方法来调用,就是定义每画一道线,这样我感觉更方法些。下面是在产生的图片上画出三条线:Pen redPen = new Pen ( Color . Red , 1 ) ;Pen blackPen = new Pen ( Color . Blue , 2 ) ;//以下语句是在此图片对象上画出各种线条,可以定义线条的粗细、起点、终点等g . DrawLine ( blackPen , 0 , 2 , 210 , 250 ) ;g . DrawLine ( blackPen , 210 , 250 , 310 , 50 ) ;g . DrawLine ( redPen , 310 , 50 , 210 , 350 ) ;  知道了这些基本知识,在定制图片形状,给图片上色,在图片上写字、画线就显得比较容易了,下面代码(chart2.aspx)的功能就是定制一个正方形图片,并在图片上画线、写字、上色,具体如下:

<%@ Page Language = "C#" ContentType = "image/jpeg" %> <%@ Import Namespace = "System" %><%@ Import Namespace = "System.Drawing" %><%@ Import Namespace = "System.Drawing.Drawing2D" %><%@ Import Namespace = "System.Drawing.Imaging" %><html > <head > <script language = "C#" runat = "server" > void Page_Load ( object sender , EventArgs e ) { Bitmap image = new Bitmap ( 400 , 400 ) ;Font axesFont = new Font ( "arial" , 10 ) ;Brush blackBrush = new SolidBrush ( Color . Red ) ;Pen redPen = new Pen ( Color . Red , 1 ) ;Pen blackPen = new Pen ( Color . Blue , 2 ) ;Graphics g = Graphics . FromImage ( image ) ; g . Clear ( Color . White ) ; g . FillRectangle ( new SolidBrush ( Color . LightGreen ) , 0 , 0 , 400 , 400 ) ;//在此图片对象中画出图片,可以定义文字大小、位置、色彩等g . DrawString ( "在图片上面写入文字,呵呵" , axesFont , blackBrush , 90 , 20 ) ;//以下语句是在此图片对象上画出各种线条,可以定义线条的粗细、起点、终点等g . DrawLine ( blackPen , 0 , 2 , 210 , 250 ) ;g . DrawLine ( blackPen , 210 , 250 , 310 , 50 ) ;g . DrawLine ( redPen , 310 , 50 , 210 , 350 ) ;//以"Jpeg"格式保存此图片对象,在客户端显示出来// image . Save ( Response . OutputStream , ImageFormat . Jpeg ) ; image . Save ( Response . OutputStream , ImageFormat . Jpeg ) ; } </script > </head > <body > </body > </html >图04:在图片上完成画线、写字和上色