Internet Explorer对TTF的支持情况如何?

32

我想确定Internet Explorer对TTF字体格式的支持情况。(我手头没有任何Windows机器可以尝试。)Caniuse网站上的表格显示,从IE9版本开始支持TTF格式,但“仅在[字体被]设置为可安装时才有效”。那是什么意思?该页面链接到MSDN上的博客文章,它描述了IE9上更新的字体支持。不太清楚或明确,我认为所提到的“原始字体”是指ttf和otf格式。文章中写道,“受支持的字体格式包括……具有可安装嵌入权限的原始字体。”

因此,总结如下:

  • IE是否完全支持ttf字体?
  • 如果存在ttf支持,IE9、IE10和IE11之间有何不同?
  • “可安装嵌入权限”的含义是什么?与ttf字体有关吗?

1
术语“原始字体”用于区分“封装”格式,例如woff和EOT(在这两种格式中,实际上的内部是某种TTF / OTF,但压缩/编码方式不同)。 - djangodude
根据字体松鼠的说法,TTF格式的字体可以在大多数浏览器中使用,但不包括IE和iPhone。 - Danield
目前,在iPhone 4和iPhone 5上,使用(原装)Safari浏览器,TTF字体可以正常工作。 - Taylor Taff
2个回答

43

正如我在上面的问题中提到的,Internet Explorer从9版本开始支持一些ttf字体,但是“只有在[字体被]设置为可安装时才能工作”。

一些背景知识:

...TrueType字体具有嵌入“位”,允许字体创建者决定允许的嵌入级别。有四个不同的嵌入位:(1)无嵌入,(2)仅用于查看和打印,(3)用于查看、打印和编辑,以及 (4)可安装嵌入。许多小型字体设计公司都将其嵌入位设置为不允许任何形式的嵌入...

来源(还包含很多其他相关信息) 这里还有另一个类似的信息来源

另一个问题中,讨论了嵌入位的处理。在那里揭示了Font Squirrel Webfont生成器默认情况下将自动处理大多数字体的这些嵌入位。由于我已经通过字体松鼠将我的字体转换过来,所以我可以放心使用它。我调整了CSS以优先使用TTF进行测试,并通过webpagetest获得了以下结果:

请注意,我没有测试未设置为可安装的嵌入位的字体,所以我无法对此发表任何看法。但是,总的结论是:当将嵌入位设置为可安装时,TTF字体可以在IE 9及其以上版本中使用

我调整了我的CSS,使其优先选择TTF而不是WOFF。你怎么做到的?! - user334639
1
@user334639:我在font-face CSS中将TTF放在WOFF之前。浏览器通常使用他们支持的第一个字体格式,因此它是如何工作的。请注意,这违反了“防弹”语法。 - JC Hulce
好知道!你是从哪里学习到这个的参考文献呢?它是规范的一部分吗? - user334639
@user334639 是的,这是规范:http://www.w3.org/TR/CSS2/fonts.html 浏览器会遍历列出的字体,直到找到支持的字体为止,然后使用它。 - JC Hulce
这是关于 font-family 而不是 @font-face 的问题。无论如何,我进行了一些测试,确实是这样的。测试很简单:只需指向不同的字体,就可以看到呈现的结果。 - user334639

5

只需谷歌“internet explorer ttf support”或类似的关键词,即可获得大量信息,例如http://www.fontspring.com/blog/fixing-ie9-font-face-problems

IE对TTF的支持并不清楚:有些网站声称支持(例如caniuse),而另一些则否认(例如http://webfonts.info/node/379

TTF文件中包含有关用户使用字体的信息。为了允许在网站上使用TTF字体,字体的嵌入位必须设置为可安装。 “嵌入位”是指OS / 2表中的fsType信息,“可安装”表示所有fsType位均关闭。因此,即使浏览器支持TTF,字体的铸造厂也可能拒绝使用特定字体。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接