7. The Glyph Definition Table (GDEF)
The Glyph Definition (GDEF) table contains three types of information in three independent tables:
The GlyphClassDef table classifies the different types of glyphs in the font.
The AttachmentList table identifies all attachment points on the glyphs, which streamlines data access and bitmap caching.
The LigatureCaretList table contains positioning data for ligature carets, which the text-processing client uses on screen to select and highlight the individual components of a ligature glyph.
Both the GSUB and GPOS tables reference the GDEF table information to supplement their own data for substituting and positioning glyphs. Even so, a GDEF table is optional for a font, included at the discretion of the font developer. Without a GDEF table, however, the text-processing client may have to define and maintain the GDEF information on its own when substituting and positioning glyphs.