9.8 B ˆl–ßi~” ”†»Ò�vàp©‹Fÿà ƒi§Û_‡I|¥‰ÓMa–ßi~”*j"Tâ�~ãa¸&Tţ �
HarfBuzz provides text shaping through a cross-platform C API that accepts sequences of Unicode codepoints as input. Currently, the following OpenType shaping models are supported:
Indic (covering Devanagari, Bengali, Gujarati, Gurmukhi, Kannada, Malayalam, Oriya, Tamil, Telugu, and Sinhala)
Arabic (covering Arabic, N'Ko, Syriac, and Mongolian)
Thai and Lao
Khmer
Myanmar
Tibetan
Hangul
Hebrew
The Universal Shaping Engine or USE (covering complex scripts not covered by the above shaping models)
A default shaping model for non-complex scripts (covering Latin, Cyrillic, Greek, Armenian, Georgian, Tifinagh, and many others)
Emoji (including emoji modifier sequences, flag sequences, and ZWJ sequences)
In addition to OpenType shaping, HarfBuzz supports the latest version of Graphite shaping (the "Graphite 2" model) and AAT shaping.
HarfBuzz can read and understand TrueType fonts (.ttf), TrueType collections (.ttc), and OpenType fonts (.otf, including those fonts that contain TrueType-style outlines and those that contain PostScript CFF or CFF2 outlines).
HarfBuzz is designed and tested to run on top of the FreeType font renderer. It can run on Linux, Android, Windows, macOS, and iOS systems.
In addition to its core shaping functionality, HarfBuzz provides
functions for accessing other font features, including optional
GSUB and GPOS OpenType features, as well as
all color-font formats (CBDT,
sbix, COLR/CPAL, and
SVG-OT) and OpenType variable fonts. HarfBuzz