[mpeg-OTspec] loca, maxp.numGlyphs, and TTC

Behdad Esfahbod behdad at behdad.org
Thu May 24 20:00:11 CEST 2012


On 05/17/2012 03:42 PM, Sairus Patel wrote:
> 
> http://www.microsoft.com/typography/otspec/loca.htm says:
> 
>> In the particular case of the last glyph(s), loca[n] will be equal the
> length of the glyph data ('glyf') table. [...] Most routines will look
> at the 'maxp' table to determine the number of glyphs in the font, but
> the value in the 'loca' table must agree.
> 
> The above implies that the first offset in 'loca' must be zero and the last
> offset the length of the 'glyf' table.
> 
> If this is true, then TTC components that share the same 'glyf' table must all
> have the same maxp.numGlyphs value. You wouldn't be able to have one component
> accessing glyph IDs 0-99 (maxp.numGlyphs=100) and another accessing glyph IDs
> 0-105 (maxp.numGlyphs=106).

Well.  Different faces in a collection can point to different parts of the
glyf data since they each have their own start/end for the table.  Right?  The
faces would then require different 'loca' tables.

All said, these are the kind of things that I wish OpenType had made
permissible more clearly.  I'm sure if TTC ever makes it to WOFF, these tricks
will definitely be disallowed...

behdad


> Greg and others, is my reading of the 'loca' spec (and its implications for
> TTCs) the intended one?
> 
> And is this an implementation limit or a design point, in your opinion?
> 
> Thanks,
> 
> Sairus
> 
> 



More information about the mpeg-otspec mailing list