首页 新闻 赞助 找找看

asp.net 如何生成透明的图片(C#)

0
悬赏园豆:50 [已关闭问题]

如题:

<img src='img.ashx?action=newimg' alt='' title='连接后台生成的图片' >

从img.ashx  动态生成图片.

生成图片代码如下:

 Bitmap gx = new Bitmap(300,300, System.Drawing.Imaging.PixelFormat.Format32bppArgb);

Graphics gd = Graphics.FromImage(gx);
        StringFormat sf = new StringFormat();
        gd.InterpolationMode = System.Drawing.Drawing2D.InterpolationMode.High;

        //设置高质量,低速度呈现平滑程度
        gd.SmoothingMode = System.Drawing.Drawing2D.SmoothingMode.HighQuality;

        //清空画布并以透明背景色填充
        gd.Clear(Color.Transparent);        
         sf.Alignment = StringAlignment.Center;
        sf.LineAlignment = StringAlignment.Far;
        g.TextRenderingHint = System.Drawing.Text.TextRenderingHint.AntiAlias; //消除毛边

gd.DrawString("你好", new SolidBrush(Color.FromArgb(rr, gg, bb)),0,0);
        MemoryStream ms = new MemoryStream();
        gx.Save(ms, ImageFormat.Gif);
        zygcontext.Response.ContentType = "image/gif";
       zygcontext.Response.BinaryWrite(ms.ToArray());

 

 

生成的GIF图片一片黑.可是如果我把它输出png格式的图就看得清字.可是在IE6下面.PNG格式的图片又有灰色的底.

大家看看有没有更好的办法解决这个生成透明图片的问题.

张玉光的主页 张玉光 | 初学一级 | 园豆:150
提问于:2009-07-10 01:24
< >
分享
其他回答(2)
0
邀月 | 园豆:25475 (高人七级) | 2009-07-10 08:43
0

你是要背景透明的效果吧,那就不要设置输出的是gif的格式

实在清闲 | 园豆:10 (初学一级) | 2009-07-10 10:33
0

改把图片的CSS样式表改为透明就可以了

lisw | 园豆:313 (菜鸟二级) | 2009-07-10 15:54
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册