Table of Contents
- Core API
- hb-blob — Binary data containers
- hb-buffer — Input and output buffers
- hb-common — Common data types
- hb-deprecated — Deprecated API
- hb-face — Font face objects
- hb-font — Font objects
- hb-map — Object representing integer to integer mapping
- hb-set — Object representing a set of integers
- hb-shape-plan — Object representing a shaping plan
- hb-shape — Conversion of text strings into positioned glyphs
- hb-unicode — Unicode character property access
- hb-version — Information about the version of HarfBuzz in use
- OpenType API
- Apple Advanced Typography API
- hb-aat-layout — Apple Advanced Typography Layout
- Integration API
- API Index
- Annotation Glossary
The current HarfBuzz codebase is versioned 2.x.x and is stable and under active maintenance. This is what is used in latest versions of Firefox, GNOME, ChromeOS, Chrome, LibreOffice, XeTeX, Android, and KDE, among other places.
Prior to 2012, the original HarfBuzz codebase (which, these days, is referred to as harfbuzz-old) was derived from code in FreeType, Pango, and Qt. It is not actively developed or maintained, and is extremely buggy. All users of harfbuzz-old are encouraged to switch over to the new HarfBuzz as soon as possible.
To make this distinction clearer in discussions, the current HarfBuzz codebase is sometimes referred to as harfbuzz-ng.
For reference purposes, the harfbuzz-old source tree is archived here. There are no release tarballs of harfbuzz-old whatsoever.