[MPEG-OTSPEC] head flags
Simon Cozens
simon at simon-cozens.org
Wed Sep 2 20:01:07 CEST 2020
I am trying to understand the purpose of some of the flags in the head
table.
Flag bit 1 is described quite differently in TrueType and MSOT.
TrueType: "If bit 1 is set to one, the x-position of the leftmost black
bit is assumed to be the left side bearing."
MSOT: "Left sidebearing point at x=0"
I'm not sure what TrueType means by "leftmost black *bit*", but I can't
think of a situation where this wouldn't be true, and anyway it seems
like the opposite of MSOT, where the LSB is apparently set to 0 (unless
"left sidebearing *point*" means something I'm not expecting).
What does this bit mean and what do consumers do with it?
Bit 11 *seems* to be about the DSIG table being invalidated, but as
previously mentioned here nobody validates the DSIG table anyway.
Bit 12 is *severely* underdocumented.
Bit 14 claims to be for Last Resort fonts. As a point of information,
neither Adobe Blank nor Apple Last Resort set this bit. It's also
unclear what font consumers should do about it. So the cmap table
representation is a lie - what should the shaping engine trust instead?
Also glyphDataFormat is set to a constant 0 when we have now at least
three different primary outline representation formats, which seems like
a waste.
S
More information about the mpeg-otspec
mailing list