C#生成透明图片

直奔主题,见代码:

 

using System;
using System.Data;
using System.Configuration;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;
using System.Drawing;

/// <summary>
/// DrawImage 的摘要说明
/// </summary>
public class DrawImage
{
 public DrawImage()
 {
  //
  // TODO: 在此处添加构造函数逻辑
  //
 }
    public static string Drawing(string checkCode,Color color1,Color color2,string fontname,int fontsize,double width,int height,FontStyle fs)
    {
        if (checkCode == null || checkCode.Trim() == String.Empty)
            return "";

        System.Drawing.Bitmap image = new System.Drawing.Bitmap((int)Math.Ceiling((checkCode.Length * width)), height);
        Graphics g = Graphics.FromImage(image);

        try
        {
            //清空图片背景色
            g.Clear(Color.Transparent);//背景色正常为黑色

            Font font = new System.Drawing.Font(fontname, fontsize, fs);
            System.Drawing.Drawing2D.LinearGradientBrush brush = new System.Drawing.Drawing2D.LinearGradientBrush(new Rectangle(0, 0, image.Width, image.Height), color1, color2, 1.2f, true);
            g.DrawString(checkCode, font, brush, 2, 2);

            System.IO.MemoryStream ms = new System.IO.MemoryStream();
            image.Save(ms, System.Drawing.Imaging.ImageFormat.Gif);
            HttpContext.Current.Response.ClearContent();
            HttpContext.Current.Response.ContentType = "image/Gif";
            HttpContext.Current.Response.BinaryWrite(ms.ToArray());
            return g.ToString();
        }
        finally
        {
            g.Dispose();
            image.Dispose();
        }
    }
}

 

在调用时把图片做如下设置:

<img src='Image.aspx' style='FILTER: chroma(color:#000000)'>

这样显示的图片就为透明的。。

 

你可能感兴趣的:(image,String,filter,C#,null,Class)