Asp.net中使用GDI 繪製圖形
2008-02-22 09:30:57来源:互联网 阅读 ()
GDI ——下一代圖形設備接口
所有的圖形用戶界面(GUI)應用程序都與硬件設備(顯示器,打印機,掃描儀)進行交互,這可以表示為可讀的數據。不過應用程序並不直接和設備之間進行通信,否則必須為每台設備分別編寫 不同的用戶接口代碼。為了避免這種重復的工作,我們可以在應用程序和設備之間使用第三個組件,此組件將轉換和傳送發送到設備的數據,以及設備發送到程序的數據。而這個組件就是GDI 。GDI 是.NET Framework中與圖形設備進行交互的入口。GDI 是一組C 類,位于一個名為Gdiplus.dll的類庫中。Gdiplus.dll是Windows XP和Windows Server 2003操作系統中一個内置組件。好了,學術性的東西在這裡就不多廢唇舌了,下面我們用GDI 在Web Form中來畫一幅圖。
像類似這樣的圖想必大家都見過,當然這個圖並不標準,這裡把代碼貼出來有興趣的可以試一試!
namespace Sky_MsdnDataGrid
{
using System;
using System.Collections;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Drawing.Imaging;
using System.Web;
using System.Web.SessionState;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.HtmlControls;
/// <summary>
/// AspxChart 的摘要描述。
/// </summary>
public class AspxChart : System.Web.UI.Page
{
private Bitmap bitmap;
private Graphics graphics;
private int[] arrValues;
private string[] arrValueNames;
private void Page_Load(object sender, System.EventArgs e)
{
arrValues = new int[6];
arrValueNames = new string[6];
arrValues[0] = 100;
arrValues[1] = 135;
arrValues[2] = 115;
arrValues[3] = 125;
arrValues[4] = 75;
arrValues[5] = 120;
arrValueNames[0] = "一月";
arrValueNames[1] = "二月";
arrValueNames[2] = "三月";
arrValueNames[3] = "四月";
arrValueNames[4] = "五月";
arrValueNames[5] = "六月";
this.Init_Bitmap();
this.Draw_Rectangle();
this.Draw_Pie();
// 將繪製的圖像以 Gif 的格式保存到當前頁面響應的輸出流中
bitmap.Save(this.Response.OutputStream,ImageFormat.Gif);
}
/// <summary>
/// 對即將要被繪製的位圖(可想象為一塊畫佈)進行初始動作
/// </summary>
private void Init_Bitmap()
{
bitmap = new Bitmap(400,200);
graphics = Graphics.FromImage(bitmap);
graphics.Clear(Color.White);
graphics.DrawString("X 公司上半年銷售情況",new Font("新細明体",16,FontStyle.Underline),Brushes.Black,new PointF(5,5));
}
#region Web Form 設計工具產生的程式碼
override protected void OnInit(EventArgs e)
{
//
// CODEGEN: 此為 ASP.NET Web Form 設計工具所需的呼叫。
//
InitializeComponent();
base.OnInit(e);
}
/// <summary>
/// 此為設計工具支援所必須的方法 - 請勿使用程式碼編輯器修改
/// 這個方法的內容。
/// </summary>
private void InitializeComponent()
{
this.Load = new System.EventHandler(this.Page_Load);
标签:
版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有
上一篇:asp.net css注释的影响
下一篇:ASP.NET与数据库相关技巧
IDC资讯: 主机资讯 注册资讯 托管资讯 vps资讯 网站建设
网站运营: 建站经验 策划盈利 搜索优化 网站推广 免费资源
网络编程: Asp.Net编程 Asp编程 Php编程 Xml编程 Access Mssql Mysql 其它
服务器技术: Web服务器 Ftp服务器 Mail服务器 Dns服务器 安全防护
软件技巧: 其它软件 Word Excel Powerpoint Ghost Vista QQ空间 QQ FlashGet 迅雷
网页制作: FrontPages Dreamweaver Javascript css photoshop fireworks Flash