ASP.net生成文字图片

string _FontName = Request["fontname"].ToString();
   int _FontSize = Convert.ToInt16(Request["fontsize"]);
   string _ShowName = Request["str"].ToString();
  
  
   Bitmap objBitmap = null;
   Graphics g = null ;
  
   Font stringFont = new Font(_FontName, _FontSize, FontStyle.Bold );
   StringFormat stringFormat = new StringFormat();
   stringFormat.FormatFlags = StringFormatFlags.NoWrap;

   try
   {
    objBitmap = new Bitmap(1,1);
    g = Graphics.FromImage(objBitmap);
    SizeF stringSize = g.MeasureString(_ShowName, stringFont);
    int nWidth = (int)stringSize.Width;
    int nHeight = (int)stringSize.Height;
    g.Dispose();
    objBitmap.Dispose();

    objBitmap = new Bitmap(nWidth,nHeight);
    g = Graphics.FromImage(objBitmap);
    g.FillRectangle(new SolidBrush(Color.Yellow), new Rectangle(0,0,nWidth,nHeight));
    g.TextRenderingHint = TextRenderingHint.AntiAlias;
    g.DrawString(_ShowName, stringFont, new SolidBrush(Color.Black), new PointF(0, 0), stringFormat);  
    objBitmap.Save(Response.OutputStream, ImageFormat.Gif);
   }
   catch (Exception ee)
   {
    Response.Write(ee.ToString());
   }
   finally
   {
    if (null != g) g.Dispose();
    if (null != objBitmap) objBitmap.Dispose();
    Response.End();
   }

 

posted @ 2005-12-22 14:23  MaxIE  阅读(281)  评论(0编辑  收藏  举报