如何在WPF中计算字体高度?

对于
FontFamily
,我如何以特定的
FontSize
以编程方式检索/计算该字体的最大高度范围? 我需要一个值来设置一个文本块的高度,该文本块将在指定的
FontSize
显示字体 - 这必须以编程方式执行。 我需要一个考虑上升器和下降器等的值。 更新 为了澄清,我需要整个
FontFamily
的最大高度范围,而不是该字体中某些示例文本的高度。我不知道文本会提前发生什么。     
已邀请:
可以使用其LineSpacing属性计算字体的最大高度范围,该属性是字体的比例数字。这可以用于给出行高,该行高可以容纳特定大小的该字体的所有字形。
    FontFamily fontFamily = new FontFamily("Segoe UI");
    double fontDpiSize = 16;

    double fontHeight = Math.Ceiling(fontDpiSize * fontFamily.LineSpacing);
结果:
   22.0
该图将包含少量的前导,当需要文本行的高度时(因此来自相邻文本行的上升和下行具有间距)是合乎需要的。     
使用
System.Windows.Media.FormattedText
类。 例:
FormattedText ft = new FormattedText("Quick Brown Fox Jumps Over A Lazy Dog.",
                                     CultureInfo.CurrentCulture,
                                     CultureInfo.CurrentCulture.TextInfo.IsRightToLeft ? FlowDirection.RightToLeft : FlowDirection.LeftToRight,
                                     new Typeface("Verdana"),
                                     9,
                                     new SolidColorBrush(Colors.White)
Double maxHeight = ft.MaxTextHeight;
    

要回复问题请先登录注册