2011-12-05 242 views
0

我正在使用GraphicPath.Addstring方法将字符串添加到图形路径,并使用Graphics.drawpath来绘制字符串。我想计算绘制文本的宽度和高度,以便可以在绘制的文本周围绘制矩形。我曾尝试使用Graphics.MeasureStringTextRenderer.MeasureText来计算宽度,并使用Graphicpath.addrectangleGraphics.Drawpath来绘制矩形,但我无法使用不同的字体获得正确的尺寸。在GraphicsPath绘制的文本周围绘制矩形边框

请帮我解决这个问题。

+0

你可以发布一些代码的例子吗? – punker76

回答

0

希望这个例子可以帮助你

var gp = new GraphicsPath(); 
var g = baseControl.CreateGraphics(); 
var textSize = g.MeasureString(text, basefont); 
gp.AddRectangle(new Rectangle(new Point(0, 0), textSize); 
gp.AddString("Your String", basefont.FontFamily, basefont.Style, basefont.Size - 0.25f); 
1

您的字符串添加到该路径,然后调用

GraphicsPath.GetBounds();

确定的区域。这将需要根据用于呈现字符串的笔大小而被夸大。

0

小修正:

gp.AddRectangle(new Rectangle(new Point(0, 0), textSize.ToSize()); 
+0

如果您有足够的声望,请将其作为您所提及的答案的评论发布! –