Asp.Net-GDI+畫圖示例

Asp.Net-GDI+畫圖示例
1Demo1-矩形,橢圓,多邊形畫法
1)  首先咱們建立一個網站,咱們須要添加以下命名空間:
using System.Drawing;
using System.Drawing.Drawing2D;
 
using System.Drawing.Drawing2D :包含了GDI+的新增類,提供高級的二維和矢量圖形功能。
其中Graphics類是GDI+核心。
2)  咱們在頁面的Page_Load方法中添加以下代碼:
// 定義畫筆
        Pen MyPen1 = new Pen(Color.Black,5);
        Pen MyPen2 = new Pen(Color.Black, 5);
        Pen MyPen3 = new Pen(Color.Black, 5);
        Pen MyPen4 = new Pen(Color.Black, 5);
        Pen MyPen5 = new Pen(Color.Blue, 10);
        Pen MyPen6 = new Pen(Color.Blue, 10);
        Pen MyPen7 = new Pen(Color.Blue, 10);
        // 建立畫布
        Bitmap MyMap = new Bitmap(710,510);// 建立了一個寬710,高150畫布
        Graphics MyG = Graphics.FromImage(MyMap);
        // 鏈接畫筆
        MyG.Clear(Color.White);
        MyG.DrawLine(MyPen1,10,20,150,20);
        MyG.DrawLine(MyPen2, 150, 20, 150, 100);
        MyG.DrawLine(MyPen3, 150, 100, 10, 100);
        MyG.DrawLine(MyPen4, 10, 100, 10, 20);
        MyG.DrawLine(MyPen5, 50, 20, 48, 100);
        MyG.DrawLine(MyPen6, 100, 20, 102, 100);
        MyG.DrawLine(MyPen7, 50, 60, 100, 60);
        // 橢圓
        Pen MyPen8 = new Pen(Color.Black,2);
        MyG.DrawEllipse(MyPen8,250,20,250,120);// 參數包含:使用的畫筆,橢圓的起始座標,寬,高
        MyG.DrawEllipse(MyPen8, 275, 20, 200, 120);
        MyG.DrawEllipse(MyPen8, 350, 20, 50, 120);
        // 建立多邊形的點
        Point p0 = new Point(600,10);
        Point p1 = new Point(620, 60);
        Point p2 = new Point(600, 110);
        Point p3 = new Point(580, 60);
        Point[] MyPoints = { p0, p1, p2, p3 };
        // 建立多邊形
        Pen MyPen9 = new Pen(Color.Black, 2);
        MyG.DrawPolygon(MyPen9,MyPoints);// MyPoints數組中每一個孤立點鏈接成一個封閉的圖形。
        // 把圖像輸出到HTTP響應流,從而顯示在頁面中
        MyMap.Save(Response.OutputStream,System.Drawing.Imaging.ImageFormat.Gif);
        MyMap.Dispose();
 MyG.Dispose();
     運行結果如圖:
    
2 Demo2-進行圖像的簡單處理
       1 )添加以下命名空間:
using System.Drawing;
using System.Drawing.Drawing2D;
2 咱們在頁面的Page_Load方法中添加以下代碼:
             
        Bitmap MyMap = new Bitmap(1024,768);
        Graphics MyG = Graphics.FromImage(MyMap);
        MyG.Clear(Color.White);
        // 建立圖片路徑
        System.Drawing.Image img;
        img = System.Drawing.Image.FromFile("F:\\A3.jpg");
        // 建立區域
        Point point1=new Point(0,0);
        Rectangle rct=new Rectangle(0,0,410,307);
        // 加載圖片
        MyG.DrawImage(img,point1);
        // 加載縮略圖
        MyG.DrawImage(img,rct);
        // 加載文字
        MyG.DrawString(" 縮略圖" ,new Font(" 宋體" ,18),Brushes.Red,new Point(320,20));
        MyG.DrawString(" 原圖" ,new Font(" 宋體" ,18),Brushes.Red,new Point(420,20));
        // 輸出顯示
        MyMap.Save(Response.OutputStream,System.Drawing.Imaging.ImageFormat.Gif);
        MyMap.Dispose();
        MyG.Dispose();
     運行結果如圖:
        
相關文章
相關標籤/搜索