《asp.net 2.0 将文字转成图片》出处 :http: // blog.csdn.net/LEOlws/archive/2006/12/30/1469370.aspx 作者:甜饼旺 --------------------------- 代码开始 ----------------------------- CompNamePic.aspx(图片要显示在哪个页面中的图片框中)CompNamePic.Text = " 需要显示的文字 " ; ----- ----- ----- ----- ----- ----- ----- ----- CompNamePic.ascx.cs(用于显示自定义文字图片的控件): using System; public partial class Shop_UC_CompNamePic : System.Web.UI.UserControl ... { private string _Text = null; ...#region public string Text ...{ get ...{ if (_Text == null || _Text.Trim().Length <= 0) ...{ return ""; } return _Text; } set ...{ _Text = value; } } #endregion protected void Page_Load(object sender, EventArgs e) ...{ } protected override void Render(System.Web.UI.HtmlTextWriter writer) ...{ imgText.ImageUrl = "CompNamePic.aspx?Text=" + Server.UrlEncode(Text); base.Render(writer); }} ----- ----- ----- ----- ----- ----- ----- ----- CompNamePic.aspx.cs(将生成的图片打印到网页): using System; public partial class Shop_CompNamePic : System.Web.UI.Page ... { ...#region private string CompName ...{ get ...{ if (Request.QueryString["Text"] == null || Request.QueryString["Text"].Trim().Length <= 0) ...{ return ""; } return Server.UrlDecode(Request.QueryString["Text"]); } } #endregion protected void Page_Load(object sender, EventArgs e) ...{ CreateImgText cit = new CreateImgText(CompName); Response.BinaryWrite(cit.CreateTextByte()); }} ----- ----- ----- ----- ----- ----- ----- ----- CreateImgText.cs(用于将文字转换成图片的类): using System; using System.IO; using System.Drawing; using System.Drawing.Text; using System.Windows.Forms; /**/ /**/ /**/ /// <summary>/// 创建图片文字/// </summary> public class CreateImgText ... { private string _Text = null; private Color _TextColor = Color.Empty; private FontStyle _TextStyle = FontStyle.Bold; private int _Width; private int _Height; ...#region /**//**//**//// <summary> /// 要显示的文本 /// </summary> public string Text ...{ get ...{ if (_Text == null || _Text.Trim().Length <= 0) ...{ return "图片加载中"; } return _Text; } set ...{ _Text = value; } } /**//**//**//// <summary> /// 文本颜色 /// </summary> public Color TextColor ...{ get ...{ if (_TextColor == Color.Empty) ...{ return Color.Black; } return _TextColor; } set ...{ _TextColor = value; } } /**//**//**//// <summary> /// 文本样式 加粗 倾斜 普通等 /// </summary> public FontStyle TextStyle ...{ get ...{ return _TextStyle; } set ...{ _TextStyle = value; } } /**//**//**//// <summary> /// 图片的宽 /// </summary> public int Width ...{ get ...{ return _Width; } //set { _Width = value; } } /**//**//**//// <summary> /// 图片的高 /// </summary> public int Height ...{ get ...{ return _Height; } //set { _Height = value; } } #endregion ...#region public CreateImgText() ...{ } public CreateImgText(string strText) ...{ _Text = strText; } public CreateImgText(string strText,Color TextColor) ...{ _Text = strText; _TextColor = TextColor; } public CreateImgText(string strText, Color TextColor, FontStyle TextStyle) ...{ _Text = strText; _TextColor = TextColor; _TextStyle = TextStyle; } #endregion /**//**//**//// <summary> /// 创建输出的文字流 /// </summary> /// <returns></returns> public byte[] CreateTextByte() ...{ Font font = new Font("黑体", 20, TextStyle); Brush brush = new SolidBrush(TextColor); // 计算文字的宽和高 Size sizeText = TextRenderer.MeasureText(Text, font); _Width = sizeText.Width; _Height = sizeText.Height; // 创建一个位图 Bitmap bmp = new Bitmap(sizeText.Width, sizeText.Height); // 设置画布 Graphics grph = Graphics.FromImage(bmp); // 指定消除锯齿 文字 grph.TextRenderingHint = TextRenderingHint.AntiAlias; // 清除画布 grph.Clear(Color.White); // 在画布上画图案 内容,字体,画刷,坐标 grph.DrawString(Text, font, brush, 0, 0); // 新建一个内存流 MemoryStream stream = new MemoryStream(); // 将图片保存在内存流中 bmp.Save(stream, System.Drawing.Imaging.ImageFormat.Jpeg); byte[] byteBuf = new byte[stream.Length]; byteBuf = stream.ToArray(); //资源回收 bmp.Dispose(); grph.Dispose(); stream.Close(); return byteBuf; }} --------------------------- 代码结束 -----------------------------