首页 > 代码库 > 使用Graphics绘制字体阴影代码

使用Graphics绘制字体阴影代码

using System;using System.Collections.Generic;using System.Drawing;using System.Drawing.Drawing2D;using System.Linq;using System.Windows.Forms;namespace Guying.Project.DrawFontShadow{    public partial class FrmMain : Form    {        public FrmMain()        {            InitializeComponent();        }        protected override void OnPaint(PaintEventArgs e)        {            base.OnPaint(e);            Graphics graphics = e.Graphics;            graphics.Clear(Color.White);            //对文本使用去锯齿的边缘处理            FontFamily fontFamily = new FontFamily("宋体");            Font font = new Font(fontFamily, 100, FontStyle.Bold, GraphicsUnit.Pixel);            //文本输出框            RectangleF textout = new RectangleF(font.Height, this.ClientSize.Height / 2, this.ClientSize.Width, this.ClientSize.Height);            //在两个不同的位置绘制文本,形成阴影            //solidBrush的色彩透明度为100,暗黑            SolidBrush solidBrush = new SolidBrush(Color.FromArgb(100, Color.Black));            SolidBrush redBrush = new SolidBrush(Color.Blue);            graphics.DrawString("孤影", font, solidBrush,                new PointF(27.0f, 27.0f));            graphics.DrawString("孤影", font, redBrush,                new PointF(12.0f, 20.0f));            //另一种阴影字,阴影为线条            //构造影线画刷            HatchBrush brush_tmp = new HatchBrush(                HatchStyle.DarkDownwardDiagonal, Color.Black, Color.White);            int reptime = 40;            //先画背景            for (int i = 0; i < reptime; i++)                graphics.DrawString("您好", font, brush_tmp,                    new PointF(textout.X + i + 2, textout.Y + i + 2));            //再画前景            graphics.DrawString("您好", font, Brushes.Blue, new PointF(textout.X, textout.Y));        }}

 



使用Graphics绘制字体阴影

使用Graphics绘制字体阴影代码