我正在使用System.Windows.Media.FormattedText
进行一些低级渲染(具体来说,尝试以印刷方式呈现数学方程式)。为此,我正在使用的文本块的精确度量是至关重要的。
我正在创建几个FormattedText
个对象,并在最低渲染级别使用它们。问题是如果其中任何一个包含尾随空格,则在计算FormattedText.Width
属性时不考虑该空间。例如,如果我写:
double w1 = new FormattedText ("Hello", ...).Width;
double w2 = new FormattedText ("Hello ", ...).Width;
w1和w2结果是一样的。前导空格 正确测量。如何强制FormattedText
来测量这些尾随空格?
答案 0 :(得分:4)
从使用Width
属性更改为使用WidthIncludingTrailingWhitespace
属性。
double w1 = new FormattedText ("Hello", ...).WidthIncludingTrailingWhitespace;
double w2 = new FormattedText ("Hello ", ...).WidthIncludingTrailingWhitespace;
使用此代码,您应该看到两个不同的宽度值。