我使用GraphicPath.Addstring
方法将字符串添加到图形路径,并使用Graphics.drawpath
来绘制字符串。我想计算绘制文本的宽度和高度,以便我可以围绕绘制的文本绘制一个矩形。我尝试使用Graphics.MeasureString
和TextRenderer.MeasureText
计算宽度,Graphicpath.addrectangle
和Graphics.Drawpath
绘制矩形,但我无法使用{{1}}和{{1}}来绘制矩形不同的字体。
请帮我解决这个问题。
答案 0 :(得分:1)
将您的字符串添加到路径然后调用
GraphicsPath.GetBounds();
确定该地区。这将需要膨胀,具体取决于用于渲染字符串的笔大小。
答案 1 :(得分:0)
答案 2 :(得分: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);
答案 3 :(得分:0)
小修正:
gp.AddRectangle(new Rectangle(new Point(0, 0), textSize.ToSize());