![]() ![]() ![]() ![]() ![]() ![]() ![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
|||||||||
![]() |
||||||||||||
Microsoft Typography | Developer... | OpenType specification | OpenType tables | The hmtx table | ||||||||||||
![]() |
||||||||||||
The type longHorMetric is defined as an array where each element has two parts: the advance width, which is of type uFWord, and the left side bearing, which is of type FWord. Or, more formally: typedef struct _longHorMetric { uFWord advanceWidth; FWord lsb; } longHorMetric;
For any glyph, xmax and xmin are given in 'glyf' table, lsb and aw are given in 'hmtx' table. rsb is calculated as follows: rsb = aw - (lsb + xmax - xmin) If pp1 and pp2 are phantom points used to control lsb and rsb, their initial position in x is calculated as follows: pp1 = xmin - lsb pp2 = pp1 + aw
|
||||||||||||
![]() |
||||||||||||
Microsoft Typography | Developer... | OpenType specification | OpenType tables | The hmtx table | ||||||||||||
![]() |