我发现了一种使用Helvetica字体时'a'字符在垂直方向上未对齐的情况。
这只是Linux / Unix上的Firefox(可能也是OSX)中的问题。我可以测试的所有其他浏览器/操作系统都正确显示了文本。
在下图中,您可以看到Firefox的其他字符下方的'a'字符。
我有一个小提琴来演示这个问题:https://jsfiddle.net/ob382a1p/
HTML:
<h1>Mailing ia la</h1>
CSS:
h1 {
font-family: 'Helvetica';
font-size: 40px;
font-weight: normal;
}
是什么原因导致该问题,以及如何解决?
最佳答案
如果要拥有Linux用户,切勿在CSS中使用Helvetica。
在Windows和OSX上,Helvetica映射到现代字体文件(在专有许可下,因此除非单独购买并自行安装它们,否则它们在Linux系统上是被禁止的。
在Linux上,Helvetica映射到非常旧的字体文件,因为Helvetica是原始的内置Postscript字体之一,因此只能保留在周围,因此打印某些文档(打印即在300dpi +的介质上渲染,在96dpi的屏幕上渲染)需要使用它的存在。完全是那些字体从未设计过的东西。
此外,Postscript字体的预期编码覆盖范围也很小,如果您强制Linux系统使用Helvetica渲染现代的非纯ASCII文本,则它必须从某些over字体中获取丢失的字形,而这些字形将无法完美匹配其余部分的比例和位置。
Linux系统有许多不错的现代字体,而且覆盖率很高,Helvetica只是其中的一部分。