What is the status of TTF support in Internet Explorer?

Solution 1:

So as I mentioned in my question above, Internet Explorer has some ttf support starting with version 9, but "only working when [fonts are] set to be installable".

Some background:

...TrueType fonts have embedding "bits" which allow the creator of the font to decide the level of embedding that will be permitted. There are four different embedding bits: (1) no embedding, (2) embedding for view and print only, (3) embedding for view, print and editing, and (4) installable embedding.. Many small type design houses have set their embedding bits so that embedding of any kind is not permitted. ...

Source (also contains a lot of other information on this) and here's Another source with similar info

In another question, dealing with the embedding bits was discussed. It was revealed there that the Font Squirrel webfont generator automatically deals with these embedding bits by default on most fonts. Since I had ran my font through font squirrel I was good to go. I tweaked my CSS to prefer TTF over WOFF for testing and obtained the following results using webpagetest:

  • IE8 Did not work with TTF. It fell back to EOT
  • IE9 Worked with TTF
  • IE10 Worked with TTF

Note that I did not test fonts without the embedding bits set to installable, no I cannot say anything about that. But the general conclusion is that TTF fonts work in IE 9 onwards when the embedding bits are set to installable

Solution 2:

Just google internet explorer ttf support or alike which would give you lots of information like eg http://www.fontspring.com/blog/fixing-ie9-font-face-problems

IE support for TTF is unclear: some sites claim support (like caniuse) other deny that (like http://webfonts.info/node/379)

In a ttf file there is information on what a user is allowed to do with the font. For TTF fonts to be allowed to be used in websites the font's embedding bits must be set to installable. The 'embedding bits' refer to fsType information in the OS/2 table, and 'installable' means that all fsType bits are off. So even if a browser supports TTF the font's foundry could deny usage of particular fonts.