我有一个应用程序,我们在运行时用其他文本替换占位符文本。这样做时,如果字符串超出某个预定义的宽度,我必须添加字符省略号。
所以我没有可用的 DrawingContext,也没有可用的 Graphics.Measure。
我使用了 FormattedText,但无法提取省略号的文本。我永远找不到正确的方法来使用这样的格式化文本。请帮忙。
我有一个应用程序,我们在运行时用其他文本替换占位符文本。这样做时,如果字符串超出某个预定义的宽度,我必须添加字符省略号。
所以我没有可用的 DrawingContext,也没有可用的 Graphics.Measure。
我使用了 FormattedText,但无法提取省略号的文本。我永远找不到正确的方法来使用这样的格式化文本。请帮忙。
对于 WinForms,您可以使用TextRenderer.MeasureText函数,
并感谢vcjones的评论,使用http://smellegantcode.wordpress.com/2008/07/03/glyphrun-and-so-forth/中描述的方法用于 WPF。