在GraphicsPath绘制的文本周围绘制矩形边框

本文关键字:绘制 周围 边框 文本 GraphicsPath | 更新日期: 2023-09-27 18:16:35

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

请帮我解决这个问题

在GraphicsPath绘制的文本周围绘制矩形边框

将字符串添加到路径中,然后调用

GraphicsPath.GetBounds();

来确定区域。这需要根据渲染字符串的笔的大小来膨胀

也许可以看看图形。MeasureCharacterRanges

希望这个例子对你有帮助

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);

小更正:

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