[英]Text getting clipped when drawing using graphics.DrawString method
我正在使用graphics.MeasureString方法來測量文本大小。 然后根據測得的文本大小,使用graphics.MeasureString繪制字符串。 但是我當時使用StringFormat來測量和繪制字符串。 但是我在諸如“ left”之類的文本中發現了文本剪切問題。
請在下面找到代碼片段,
string text = "Left";
Font font = new System.Drawing.Font("Segoe UI Semibold", 9F);
StringFormat format = new StringFormat(StringFormatFlags.NoWrap);
SizeF size = e.Graphics.MeasureString(text, font, 100, format);
e.Graphics.DrawString(text, font, new SolidBrush(Color.Black), new RectangleF(10, 10, size.Width, size.Height), format);
請在下面的屏幕截圖中進行繪制時找到文本剪輯,
您能否提出解決此問題的建議?
嘗試以下方法。 我已經從代碼中刪除了StringFormat
。 有用。
string text = "Left";
Font font = new Font("Segoe UI Semibold", 9F);
//StringFormat format = new StringFormat(StringFormatFlags.NoWrap);
SizeF size = e.Graphics.MeasureString(text, font, 100);
e.Graphics.DrawString(text, font, new SolidBrush(Color.Black), new RectangleF(10, 10, size.Width, size.Height));
編輯1
我已經根據OP的使用StringFormat
枚舉的請求修改了答案。
string text = "Left";
Font font = new Font("Segoe UI Semibold", 9F);
StringFormat format = new StringFormat(StringFormatFlags.NoWrap);
SizeF size = e.Graphics.MeasureString(text, font, 100, format);
e.Graphics.DrawString(text, font, new SolidBrush(Color.Black), new RectangleF(10, 10, size.Width + 5, size.Height), format);
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.