- From: Adam Twardoch (List) <list.adam@twardoch.com>
- Date: Fri, 18 Oct 2013 19:40:04 +0200
- To: Chris Lilley <chris@w3.org>
- CC: John Hudson <tiro@tiro.com>, public-webfonts-wg@w3.org
On 13-10-18 19:08, Chris Lilley wrote: >> A TTC is a sort of composite sfnt in which one or more tables are >> typically shared by more than one font, with offsets recorded in a >> TTCHeader table. The TTC spec is embedded within the OT spec: >> http://www.microsoft.com/typography/otspec/otff.htm > Thanks. So the entire TTC is an sfnt (specifically, an entire TTC can > be encoded as a single WOFF?) It's a sort of SFNT, yes. The TTC Header can be considered an SFNT structure. Basically, TTC is built exactly like TTF or OTF, with a number of various SFNT tables concatenated in the same way as in a regular TTF or OTF, but where in a regular TTF or OTF you have one "Table directory" (the offset table) pointing to various SFNT tables, in a TTC you have a TTC Header, which records a number of subfonts, and then has a list of offsets pointing to each subfont's Table directory (which then is normal, and points to each single SFNT table applicable to that subfont). So it really is a simple structure. > >> Most commonly, the technology is used for CJK fonts sharing a single >> glyf table with different cmap entries for roman and italic Latin >> subsets. As another example, we built Cambria Regular and Cambria Math >> as a TTC with a shared glyf table and different cmap, OS/2, OTL tables >> and, of course, name tables. > Interesting (and I saw the request for standardizing Math tables). > > I was previously only aware of TTC used for CJK fonts, and I > understood a typical use case to be 'mostly the same' Japanese and > Simplified Chinese fonts with distinct glyphs for those code points > where Unicode unification at the character level required different > language-specific glyphs. I may well have misunderstood, though. Yes for Unicode unification, although the by far most common usage is that you have a Chinese font which has all the Chinese glyphs plus one set of "proportional" Latin glyphs, one set of "full-width" Latin glyphs and one set of "half-width" Latin glyphs, and then there are three subfonts that only differ in the cmap portion that maps the Latin glyphs to the normal Latin codepoints. So all Chinese glyphs are encoded identically in all three subfonts, but each subfont exposes a different set of Latin glyphs by default. TTC predates the usage of OpenType Layout. There are OpenType Layout features (hwid, fwid, pwid) for the same purpose. Traditionally, Japanese fonts (especially those built by Adobe) make use of those OpenType Layout features, while Chinese fonts (especially those built or commissioned by Microsoft) make use of the alternate cmaps within one TTC. Functionally, this yields the same result. Adam -- May success attend your efforts, -- Adam Twardoch (Remove "list." from e-mail address to contact me directly.)
Received on Friday, 18 October 2013 17:40:33 UTC