Open seehuhn opened 4 months ago
I'm having trouble locating where you get this information - could you please give me a reference?
Most of the spec is consistent in claiming that "glyph coordinates" are mapped to text space coordinates by applying the matrix [0.001 0 0 0.001 0 0]
This can be found, for example, in section 9.2.4 (Glyph positioning and metrics), just above figure 54:
The glyph coordinate system is the space in which an individual character’s glyph is defined. All path coordinates and metrics shall be interpreted in glyph space. For all font types except Type 3, the units of glyph space are one-thousandth of a unit of text space; for a Type 3 font, the transformation from glyph space to text space shall be defined by a font matrix
There is also a mention of this is section 8.3.2.4 (Other coordinate spaces):
The transformation from glyph space to text space shall be defined by the font matrix. For most types of fonts, this matrix shall be predefined to map 1000 units of glyph space to 1 unit of text space; for Type 3 fonts, the font matrix shall be given explicitly in the font dictionary.
Most of the spec is consistent in claiming that "glyph coordinates" are mapped to text space coordinates by applying the matrix
[0.001 0 0 0.001 0 0]
(except for Type 3 fonts, where the Type 3 font matrix is used). In this light, the following text is section 9.2.4 (Glyph positioning and metrics) makes little sense:What are path coordinates here? If this refers to the paths which make up the glyph outline, the quotes statement is often wrong, since many font formats define their own coordinate system, which may not have 1000 units per em (for example using the FontMatrix field in a type 1 font, or the
unitsPerEm
value in an OpenTypehead
table). This is even partially acknowledged in Note 3 in the same section ("Due to differences in the way that TrueType and the Widths array store width information, there can be cases where widths are not identical between the two. TrueType stores widths in units of 1024 or 2048 to an Em").My suggestion would be to: