中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

實現Brush對象的五種圖形

發布時間:2020-07-18 09:18:17 來源:網絡 閱讀:518 作者:大咖M 欄目:開發技術

本實例將使用Graphics類繪制五種圖形來分別演示SolidBrush、HatchBrush、TextureBrush、LinearGradientBrush、PathGradientBrush這五種畫筆的效果,然后將這五種圖形輸出的網頁頁面中。
程序實現的主要步驟為:
(1)新建一個網站并創建Default.aspx頁面并打開Default.aspx.cs后臺代碼文件。
(2)在Default.aspx.cs代碼的Page_Load中定義一個畫布類,然后通過創建不同的實現類來實現不同的圖形,代碼如下:

01  protectedvoid Page_Load(object sender, EventArgs e)
02  {
03  Bitmap bitmap = newBitmap(950, 600);//建立位圖文件
04  Graphics gra = Graphics.FromImage(bitmap);//設置畫布,與bmap關聯
05       gra.Clear(Color.White);//設置背景為白色
06  SolidBrush solidBrush = newSolidBrush(Color.Blue);//定義單色填充畫筆
07  //使用單色填充畫筆,填充矩形內部
08       gra.FillRectangle(solidBrush, newRectangle(50, 50, 200, 200));
09  //定義具有陰影樣式、前景色以及背景色的畫筆
10  HatchBrush hatchBrush = 
11  newHatchBrush(HatchStyle.Horizontal, Color.Red, Color.FromArgb(255, 255, 224));
12  //使用陰影樣式畫筆,填充橢圓形內部
13       gra.FillEllipse(hatchBrush, newRectangle(300, 50, 300, 200));
14  //加載指定的圖片
15       System.Drawing.Image image = 
16  System.Drawing.Image.FromFile(Server.MapPath("image/Chrysanthemum.jpg"));
17  //通過指定的圖像定義填充畫筆
18  TextureBrush textureBrush = newTextureBrush(image);
19  //使用圖像填充畫筆,填充菱形內部
20       gra.FillPolygon(textureBrush, newPoint[] { newPoint(650, 150), newPoint(775, 50), 
21  newPoint(900, 150), newPoint(775, 250) });
22  //定義線性漸變畫筆,并制定了漸變區域以及漸變顏色
23  LinearGradientBrush linearGradientBrush = newLinearGradientBrush(newPoint(50, 350), newPoint(400, 350), Color.Red, Color.Yellow);
24  //使用線性漸變填充畫筆,填充矩形內部
25       gra.FillRectangle(linearGradientBrush, newRectangle(50, 350, 350, 200));
26  GraphicsPath graphicsPath = newGraphicsPath();//定義相互連接的直線對象
27       graphicsPath.AddLine(650, 350, 900, 380);//定義頂部水平直線
28       graphicsPath.AddLine(900, 380, 900, 530);//定義右側垂直直線
29       graphicsPath.AddLine(900, 530, 630, 550);//定義底部水平直線
30       graphicsPath.CloseFigure();//關閉并使用直線連接結束點與開始點
31  //定義用于填充GraphicsPath對象內部的漸變畫筆
32  PathGradientBrush pathGradientBrush = newPathGradientBrush(graphicsPath);
33  //設置路徑漸變的中心處顏色
34       pathGradientBrush.CenterColor = Color.White;
35  //定義漸變顏色
36       pathGradientBrush.SurroundColors = newColor[] { Color.Green, Color.Blue };
37  //將帶有漸變顏色的形狀,填充到矩形內部
38       gra.FillRectangle(pathGradientBrush, newRectangle(650, 350, 920, 550));
39       Response.ContentType = "image/jpeg";//聲明響應輸出流為jpeg圖片
40       bitmap.Save(Response.OutputStream, ImageFormat.Jpeg);//將位圖輸出到響應流
41  //釋放各類使用的資源
42       bitmap.Dispose();
43       gra.Dispose();
44       solidBrush.Dispose();
45       hatchBrush.Dispose();
46       image.Dispose();
47       textureBrush.Dispose();
48       linearGradientBrush.Dispose();
49       graphicsPath.Dispose();
50       pathGradientBrush.Dispose();
51  }

(3)在使用TextureBrush類實現繪制圖形時,用到了一張圖片文件,所以接著在項目上創建一個image文件夾,然后復制一個jpg類型的圖片文件并命名為Chrysanthemum.jpg。
執行程序,運行結果如圖11.3所示。
實現Brush對象的五種圖形
圖11.3 Brush對象五種圖形的顯示效果

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

西乌珠穆沁旗| 遂宁市| 中超| 锡林浩特市| 通渭县| 措美县| 大厂| 昌邑市| 宣威市| 汨罗市| 安吉县| 翁牛特旗| 彰化县| 夏津县| 儋州市| 澳门| 朝阳县| 秭归县| 雷波县| 山阳县| 苍南县| 北碚区| 蓬安县| 年辖:市辖区| 文水县| 宁河县| 视频| 左贡县| 明星| 会理县| 淮阳县| 岑溪市| 宜昌市| 津南区| 灵川县| 铜鼓县| 沧州市| 清远市| 本溪市| 随州市| 巧家县|