Skip to Main Content
Fonts & Encodings
book

Fonts & Encodings

by Yannis Haralambous
September 2007
Intermediate to advanced content levelIntermediate to advanced
1040 pages
31h 23m
English
O'Reilly Media, Inc.
Content preview from Fonts & Encodings

D.6. The TrueType Tables That Affect PostScript-Style Glyph Descriptions

D.6.1. The Table CFF

The table CFF contains a PostScript CFF font with Type 2 charstrings. We have described this type of table in Appendix C, §C.8.

D.6.2. The Table VORG

This table was born from a small gap in the TrueType structure. When we want to calculate a glyph's offset, we know that the starting point of the width vector is the point (0,0) and that the table hmtx contains the magnitude of the vector. All, then, is well.

But here we find ourselves in utter political incorrectness: that approach works only for horizontal movement, and not everyone in the world uses horizontal movement only. What happens if we move vertically? Well, there is, of course, the table vmtx, which contains the magnitude of the vertical width vector.

But what is that vector's starting point? Without that information, we cannot compute its ending point. Fortunately, the coordinates of the starting point and the ending point appear in the table glyf: they are the last two points described in the table, the phantom points.

Yes, but OpenType fonts with a CFF table do not have a glyf table! Where, then, shall we find even the height of the starting point of the width vector?

We have a hard way and an easy way to go about it. The hard way involves interpreting the charstring and calculating the vertical extrema of all the Bézier curves. The easy way is to use the VORG table.

This table has only one piece of information to offer ...

Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.
Start your free trial

You might also like

Unicode Demystified

Unicode Demystified

Richard Gillam
Unicode Explained

Unicode Explained

Jukka K. Korpela
Blender 3D By Example - Second Edition

Blender 3D By Example - Second Edition

Oscar Baechler, Xury Greer

Publisher Resources

ISBN: 9780596102425Catalog PageErrata