[英]Drawing a Rectangular Border around a Text Drawn by GraphicsPath
我正在使用GraphicPath.Addstring
方法將字符串添加到圖形路徑,並使用Graphics.drawpath
繪制字符串。 我想計算所繪制文本的寬度和高度,以便可以在所繪制的文本周圍繪制一個矩形。 我嘗試使用Graphics.MeasureString
和TextRenderer.MeasureText
來計算寬度,並使用Graphicpath.addrectangle
和Graphics.Drawpath
來繪制矩形,但是我無法使用不同的字體來獲得正確的尺寸。
請幫我解決這個問題。
將您的字符串添加到路徑,然后調用
GraphicsPath.GetBounds();
確定區域。 這需要根據用於渲染字符串的筆的大小進行充氣。
小修正:
gp.AddRectangle(new Rectangle(new Point(0, 0), textSize.ToSize());
希望這個例子對你有幫助
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);
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.