可以使用TextRenderer.MeasureText以更精确的测量,代码参考如下:
复制代码
protected override void OnPaint(PaintEventArgs e)
{
base.OnPaint(e);
string str = "测试用的字符串";
StringFormat format = new StringFormat();
format.Alignment = StringAlignment.Center;
format.LineAlignment = StringAlignment.Center;
Size size = TextRenderer.MeasureText(str, this.Font);
Rectangle rect = new Rectangle(20, 20, size.Width, size.Height);
TextRenderer.DrawText(e.Graphics, str, this.Font, rect, Color.Blue, Color.Yellow);
e.Graphics.DrawRectangle(SystemPens.ControlDarkDark, rect);
}
嘿嘿,问题解决了,非常感谢zswang,MeasureString方法很好用,给你加分哦
也很感谢hbxtlhx










