Set the font's horizontal extents function.
The callback receives a Font. It should return an object with ascender, descender, and lineGap, or null on failure.
Set the font's vertical extents function.
The callback receives a Font. It should return an object with ascender, descender, and lineGap, or null on failure.
Set the font's glyph extents function.
The callback receives a Font and glyph ID. It should return an object with xBearing, yBearing, width, and height, or null on failure.
Set the font's glyph from name function.
The callback receives a Font and glyph name. It should return the glyph ID, or null on failure.
Set the font's glyph horizontal advance function.
The callback receives a Font and glyph ID. It should return the horizontal advance of the glyph.
Set the font's glyph horizontal kerning function.
The callback receives a Font, first glyph ID, and second glyph ID. It should return the horizontal kerning of the glyphs.
Set the font's glyph horizontal origin function.
The callback receives a Font and glyph ID. It should return the [x, y] horizontal origin of the glyph, or null on failure.
Set the font's glyph name function.
The callback receives a Font and glyph ID. It should return the name of the glyph, or null on failure.
Set the font's glyph vertical advance function.
The callback receives a Font and glyph ID. It should return the vertical advance of the glyph.
Set the font's glyph vertical origin function.
The callback receives a Font and glyph ID. It should return the [x, y] vertical origin of the glyph, or null on failure.
Set the font's nominal glyph function.
The callback receives a Font and unicode code point. It should return the nominal glyph of the unicode, or null on failure.
Set the font's variation glyph function.
The callback receives a Font, unicode code point, and variation selector. It should return the variation glyph, or null on failure.
An object representing HarfBuzz font functions. Font functions define the methods used by a Font for lower-level queries like glyph advances and extents. HarfBuzz provides built-in default implementations which can be selectively overridden.