计算C#中字符串的显示宽度?

时间:2008-11-04 21:56:14

标签: c# .net

刚刚回答了这个问题的Java版本,而且,我不知道如何在.net中执行此操作。

那么如何计算C#/ .net?

中字符串的显示宽度

6 个答案:

答案 0 :(得分:63)

Windows Forms的替代方法是静态TextRenderer.MeasureText方法。

虽然限制为整数大小,但它(与TextRenderer.DrawText一起)渲染的ClearType文本比Graphics.MeasureString / DrawString duo更精确,质量更高。

答案 1 :(得分:56)

你在这个问题中遇到的问题与Java问题中存在的问题相同 - 信息不足!它在WinForms和WPF之间会有所不同。

对于WinForms:Graphics.MeasureString

对于WPF我不确定,但我怀疑它将取决于您绘制文本的确切方式......

答案 2 :(得分:21)

在WPF中,您将使用FormattedText

答案 3 :(得分:9)

Graphics.MeasureString但它有点蹩脚,正如解释和改进的那样; here

答案 4 :(得分:4)

您将使用Graphics.MeasureString。

http://msdn.microsoft.com/en-us/library/6xe5hazb.aspx

答案 5 :(得分:1)

Graphics.MeasureString([测量文本],[用于测量文本的字体]);

结果对象将提供以下内容:

properties available

MeasureString的其他重载也可用。