做了個藝術字線上製作網站,整理一下技術代碼 這樣我們就可以直接讀取字體了 我們可以通過 fontStyle -= FontStyle.Regular; fontStyle |= FontStyle.Bold; Font font = new Font(FML, 字體大小, fontStyle, Gr ...
做了個藝術字線上製作網站,整理一下技術代碼
System.Drawing.Text.PrivateFontCollection FM = new PrivateFontCollection(); FM.AddFontFile(Server.MapPath("字體文件路徑")); FontFamily FML = FM.Families[0];
這樣我們就可以直接讀取字體了
我們可以通過
FontStyle fontStyle = FontStyle.Regular;
fontStyle |= FontStyle.Italic;
fontStyle |= FontStyle.Underline;
...
fontStyle -= FontStyle.Regular;
fontStyle |= FontStyle.Bold;
Font font = new Font(FML, 字體大小, fontStyle, GraphicsUnit.Point);
這個我們可以設置字體加粗,斜體,下劃線的功能
Color color = ColorTranslator.FromHtml("#ff0000"); //設置字體顏色
Bitmap image = new Bitmap(width, height); Graphics g = Graphics.FromImage(image); //這裡設置圖片質量 g.SmoothingMode = System.Drawing.Drawing2D.SmoothingMode.AntiAlias; g.InterpolationMode = InterpolationMode.HighQualityBicubic; g.CompositingQuality = CompositingQuality.AssumeLinear; g.TextRenderingHint = System.Drawing.Text.TextRenderingHint.AntiAliasGridFit; RectangleF rect = new RectangleF(1, 1, width, height); SolidBrush brush = new SolidBrush(color);//繪製圖片 g.DrawString("這裡要生成的文字", font, brush, rect); brush.Dispose();
MemoryStream msBG = new MemoryStream();
//保存圖片
image.Save(msBG, ImageFormat.Png);
最後不要忘了釋放資源
FML.Dispose(); font.Dispose(); g.Dispose(); image.Dispose();
return File(msBG.ToArray(), "image/png");
具體的demo演示大家可以去我網站上查看 http://www.shiwusui.com