0

我正在为@font face 使用以下CSS。它适用于我的桌面和我测试过的 IOS 设备。但它在 Android 上失败了:

@font-face {
    font-family: 'ReformaGroteskMedium';
    src: url('/css/fonts/reforma_grotesk/26890C_0_0.eot');
    src: url('/css/fonts/reforma_grotesk/26890C_0_0.eot?#iefix') format('embedded-opentype'),
         url('/css/fonts/reforma_grotesk/26890C_0_0.woff') format('woff'),
         url('/css/fonts/reforma_grotesk/26890C_0_0.ttf') format('truetype');
    font-weight: normal;
    font-style: normal;
}

我注意到从http://www.fontsquirrel.com/生成的字体(有效)以完全相同的方式嵌入,除了它们还具有以下行:

url('SourceSansPro-ExtraLightIt-webfont.svg#SourceSansProExtraLightItalic') format('svg');

这就是为什么我的版本不起作用,Android 只支持 SVG 吗?

我在华硕平板电脑上使用的 Android 版本是 4.0.1。它在较新的 Android 手机上运行良好。

4

2 回答 2

0

引用本文中的 Moz 开发网络

当 SVG 被指定时,对网络字体的支持远未达到预期。然而,由于正确的字体对于图形的渲染至关重要,因此决定在 SVG 中添加字体描述技术。它并不意味着与 PostScript 或 OTF 等其他格式一致,而是作为一种为渲染引擎嵌入字形信息的简单方法。

所以我猜想 SVG(可缩放矢量图形)格式应该始终用作“降落伞”,以允许任何浏览器/设备引擎正确呈现字体。
无论如何,我没有找到任何关于 Android 4.0.1 和字体导入的官方信息,但我强烈建议在导入字体时也始终使用 SVG 格式。

于 2013-04-25T21:08:35.373 回答
0

您可能会遇到这个 Android 错误:

https://code.google.com/p/android/issues/detail?id=73945

根据他们的说法,它在 Android 4.4 上是固定的,但不是在以前的版本上 :(

于 2014-07-26T16:15:54.827 回答