在.Net中,可以使用GraphicsPath实现空心字的效果。
以下的示例适用于 Windows 窗体,需要一个按钮的Click事件。
private void button1_Click(object sender, EventArgs e)
{
Graphics g = this.CreateGraphics();
GraphicsPath gp = new GraphicsPath();
string stringText = "*";
FontFamily family = new FontFamily("宋体"); //字体
int fontStyle = (int)FontStyle.Bold; //字体样式
int emSize = 56; //字体大小
Point origin = new Point(20, 20); //文本的起始点,即左上角
StringFormat format = StringFormat.GenericDefault; //默认的文本格式
gp.AddString(stringText,
family,
fontStyle,
emSize,
origin,
format); //向路径添加文本字符串
//g.FillPath(new SolidBrush(Color.Black), gp);
g.DrawPath(new Pen(Color.Red), gp); //把路径画出来
g.Dispose();
}
运行效果如下图