【发布时间】:2008-11-04 21:56:14
【问题描述】:
刚刚回答了这个问题的 Java 版本,而且,我不知道如何在 .net 中执行此操作。
那么在C#/.net中如何计算字符串的显示宽度呢?
【问题讨论】:
刚刚回答了这个问题的 Java 版本,而且,我不知道如何在 .net 中执行此操作。
那么在C#/.net中如何计算字符串的显示宽度呢?
【问题讨论】:
Windows 窗体的替代方法是静态 TextRenderer.MeasureText 方法。
虽然限制为整数大小,但它(与 TextRenderer.DrawText 一起使用)比 Graphics.MeasureString/DrawString 二重奏呈现更准确和更高质量的 ClearType 文本。
【讨论】:
您在这个问题中遇到了与 Java 问题中相同的问题 - 信息不足! WinForms 和 WPF 之间会有所不同。
对于 WinForms:Graphics.MeasureString
对于 WPF 我不确定,但我怀疑这将取决于您绘制文本的确切方式...
【讨论】:
在 WPF 中,您将使用 FormattedText。
【讨论】:
Graphics.MeasureString 但它有点蹩脚,正如解释和改进的那样; here
【讨论】:
您将使用 Graphics.MeasureString。
【讨论】:
CreateGraphics 方法,可用于创建Graphics 对象(其构造函数是私有的)
Graphics.MeasureString([要测量的文本],[用于测量文本的字体]);
生成的对象将提供以下内容:
MeasureString 的其他重载也可用。
【讨论】: