为什么有时SKFontMetrics Leading属性为0?

时间:2018-11-02 16:47:31

标签: c# fonts skiasharp

当使用以下方法获取自定义SKTypeface字体的指标时,看来:

SKPaint paint = new SKPaint
{
    Color = fontColor,
    HintingLevel = SKPaintHinting.Slight,
    IsAntialias = true,
    Style = SKPaintStyle.Fill,
    SubpixelText = true,
    TextSize = fontSize,
    Typeface = fontFamily
};
SKFontMetrics metrics;
paint.GetFontMetrics(out metrics);

有时,自定义字体的metrics.Leading为0,这破坏了我们将文本放在画布上的位置的计算。给定SKTypeface,还有其他可靠的方法来计算行距吗?

例如,当使用FabricJS插件将字体加载到浏览器中并用于使用该字体呈现文本“ 106”时,它将以某种方式知道前导值:

enter image description here

但是当我使用SkiaSharp加载字体并获得SKFontMetrics时,前导值为0,这会将文本置于应有的下方:

enter image description here

有人知道当字体的前导值为0时怎么办吗,或者为什么浏览器知道字体的前导但SkiaSharp却不知道?

0 个答案:

没有答案