Re: [css3-fonts] Fragment IDs for container font formats

On 19/05/13 8:08 PM, John Daggett wrote:

> This wording was added because people were wondering how to handle the
> loading of TrueType Collections, a packaging format commonly used for
> CJK fonts that share glyphs across a set of fonts.  I'm not really
> sure this is necessary which is why I didn't want to put in strict
> guidelines.  If this needs to be tightened we can do that when actual
> implementations exist for this feature.

POI: a TrueType Collection (.ttc) is an sfnt in which different nominal 
fonts share one or more tables. The most common use of TTCs involves 
multiple fonts sharing a single glyf table, which enables an efficient 
packaging of italic and other style variants for multiscript fonts in 
which only a subset of glyphs takes these styles. As John notes, this is 
frequently done for CJK fonts in which only the Latin subset glyphs are 
so styled. All the different styles of Latin glyphs are put in a single 
glyf table alongside the single set of CJK glyphs. The TTC contains 
separate name tables for the font variants, and separate cmap tables 
pointing to appropriate Glyph ID ranges for each style.

It should be noted, however, that a TTC can contain any combination of 
shared and unshared tables, and it is entirely possible to make a TTC 
that does not consist of a shared glyf table. It is even conceivable, 
although I've never seen one, that a TTC could reverse the typical 
arrangement of multiple name tables and a single glyf table, and instead 
have a single name table and multiple glyf tables. [Microsoft's tool for 
building TTCs basically just looks at the component fonts to see which 
tables are identical, and these are shared.]

All of which is to not only agree with John's suggestion that this 
aspect of CSS fonts can be tightened when implementations exist, but to 
suggest that it probably shouldn't be tightened beforehand. It may 
eventually be necessary to specify some assumptions about TTCs.

JH

Received on Monday, 20 May 2013 16:28:47 UTC