当通过 使用自定义字体时@font-face
,它的呈现方式与我认为在 Chrome 中应该呈现的一样。然而,在 Firefox 中,额外的填充(顶部和底部)被添加到字体中。
我能做些什么吗?
当通过 使用自定义字体时@font-face
,它的呈现方式与我认为在 Chrome 中应该呈现的一样。然而,在 Firefox 中,额外的填充(顶部和底部)被添加到字体中。
我能做些什么吗?
仅供参考,这也发生在 Linux 上的 Firefox(而不是 Chromium)中。我尝试在FontForge中加载您的字体并立即收到警告:
字体中的以下表格已被 FontForge
忽略 忽略“LTSH”线性阈值表
忽略“VDMX”垂直设备指标表
忽略“hdmx”水平设备指标表
我认为问题在于VDMX(垂直设备指标)表存在缺陷:
为了避免网格拟合整个字体来确定正确的高度,已经定义了 VDMX 表。
这看起来与 Firefox 中发生的完全一样:某个地方的最小和最大高度计算不正确。这一点在选择文本的时候也很清楚:选择框一直延伸到行的最顶端和最底端;如果h1
元素确实有填充,您会看到行的顶部和底部与选择框之间存在间隙。
此外,验证显示几乎每个字形都是“<a href="http://fontforge.sourceforge.net/problems.html" rel="noreferrer">在极值处缺失点”:
PostScript 和 TrueType 都希望您在路径的最大值和最小值(极值)处有点。
快速搜索显示:
我遇到的唯一另一个问题是一个相当令人讨厌的情况,称为“Extrema 缺失点”。对于字体,字形的最左、最右、最顶部和最底部需要有一个点(或节点,因为它们在 Inkscape 中被称为)。通常它们仍然存在,这仅仅是因为您的字形的构建方式,但是带有圆形末端的对角线通常会导致问题 [来源,包括图片(向下滚动)]
只需添加:
line-height:1;
到你的 CSS 规则