asp.net GDI+ 使用PathGradienBrush类实现彩色渐变

 1 using System;
 2 using System.Collections.Generic;
 3 using System.Linq;
 4 using System.Web;
 5 using System.Web.UI;
 6 using System.Web.UI.WebControls;
 7 using System.Drawing;
 8 using System.Drawing.Drawing2D;
 9 
10 public partial class _Default : System.Web.UI.Page
11 {
12     protected void Page_Load(object sender, EventArgs e)
13     {
14         Bitmap bitmap = new Bitmap(400, 200);
15         Graphics graphics = Graphics.FromImage(bitmap);
16         graphics.Clear(Color.White);
17         Point centerPoint = new Point(100, 100);
18         int r = 100;
19         GraphicsPath path = new GraphicsPath();
20         path.AddEllipse(centerPoint.X - r, centerPoint.Y - r, 2 * r, 2 * r);
21         PathGradientBrush mypathgradientBrush = new PathGradientBrush(path);
22         mypathgradientBrush.CenterPoint = centerPoint;
23         mypathgradientBrush.CenterColor = Color.DarkGreen;
24         mypathgradientBrush.SurroundColors = new Color[] { Color.Gold };
25         graphics.FillEllipse(mypathgradientBrush, centerPoint.X - r, centerPoint.Y - r, 2 * r, 2 * r);
26         centerPoint = new Point(300, 100);
27         r = 33;
28         path = new GraphicsPath();
29         path.AddEllipse(centerPoint.X - r, centerPoint.Y - r, 2 * r, 2 * r);
30         path.AddEllipse(centerPoint.X - 2*r, centerPoint.Y - 2*r, 4 * r, 4 * r);
31         path.AddEllipse(centerPoint.X - 3 * r, centerPoint.Y - 3 * r, 6 * r, 6 * r);
32         mypathgradientBrush = new PathGradientBrush(path);
33         mypathgradientBrush.CenterPoint = centerPoint;
34         mypathgradientBrush.CenterColor = Color.Gold;
35         mypathgradientBrush.SurroundColors = new Color[] { Color.Black, Color.Blue, Color.DarkGreen };
36         graphics.FillPath(mypathgradientBrush, path);
37         System.IO.MemoryStream ms = new System.IO.MemoryStream();
38         bitmap.Save(ms, System.Drawing.Imaging.ImageFormat.Jpeg);
39         Response.ClearContent();
40         Response.ContentType = "image/Jpeg";
41         Response.BinaryWrite(ms.ToArray());
42     }
43 }

 

转载于:https://www.cnblogs.com/luxiaoyao/p/6130753.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值