- From: Adam Twardoch (List) <list.adam@twardoch.com>
- Date: Thu, 04 Mar 2010 04:44:17 +0100
- To: John Hudson <tiro@tiro.com>
- CC: "Adam Twardoch (List)" <list.adam@twardoch.com>, Chris Lilley <chris@w3.org>, Thomas Phinney <tphinney@cal.berkeley.edu>, "Tab Atkins Jr." <jackalmage@gmail.com>, www-font@w3.org
John Hudson wrote: >> Following this analogy, .woff, .eot, .otf, .ttf, .ttc, .dfont, FFIL are >> different container formats for sfnt-based digital font files. > > Is this helpful, though, to the web font issue, which is that it is > sometimes important for an agent to know whether a .woff container > format contains a CFF or TTF font? If everything is a container format, > how does one make useful distinctions between the container and the > thing contained? Being more precise, continuing the analogy: The sfnt-based container formats can contain one or more sfnt streams, plus potentially additional metadata streams. Each sfnt stream is made out of one glyph imaging substream (in TrueType or CFF coding format) and out of zero or more text layout substreams in TrueType (i.e. "kern" table), OpenType, AAT or Graphite coding formats. Additional substreams (for example private VOLT or VTT tables) can be included in the sfnt stream. Each substream is made out of sfnt tables. The coding format of the glyph imaging substream is identified by the sfnt version field at the beginning of the sfnt stream. In TrueType coding format, the sfnt version field is "\00\01\00\00". In CFF coding format, the sfnt version field is "OTTO". Now: *.ttf is a container format for desktop fonts (and, currently, web fonts) that contains just one sfnt stream with the glyph imaging substream in TrueType coding format *.otf is a container format for desktop fonts (and, currently, web fonts) that that contains just one sfnt stream with the glyph imaging substream in TrueType or CFF coding format *.ttc is a container format for desktop fonts that contains one or more sfnt streams with glyph imaging substreams in TrueType coding format *.dfont is a container format for desktop fonts that contains one or more sfnt streams with glyph imaging substreams in TrueType (or possibly CFF) coding format, plus a metadata stream (i.e. other Mac resources) *.eot is a container format for web fonts that contains one sfnt stream with the glyph imaging substream in (potentially compressed) TrueType coding format (potentially CFF is an alternative but is not supported in IE), plus a metadata stream (the EOT metadata) *.woff is a container format for web fonts that contains one sfnt stream with the glyph imaging stream in compressed TrueType or CFF coding format, plus a metadata stream (the WOFF metadata) Roughly so. A. -- Adam Twardoch | Language Typography Unicode Fonts OpenType | twardoch.com | silesian.com | fontlab.net Reporter: "So what will your trip to Ireland look like?" Lech Wałęsa: "I get into a car, then onto a plane, and then the other way around."
Received on Thursday, 4 March 2010 03:45:05 UTC