Skip to content
EntityQ4119352· pop 15· linked from 334 articles

HarfBuzz (loose transliteration of Persian calque harf-bāz, literally "open type") is an open-source text shaping engine written in C++. Text shaping is the process of converting a sequence of Unicode code points into the correct glyph identifiers and precise positions needed to render text on screen or in print. For scripts where characters change shape depending on their neighbours (such as Arabic, Devanagari, or Tamil), text shaping ensures that the right glyph forms are selected and joined correctly. Without it, text renderers would display raw disconnected code points rather than readable

Key facts

Software.name
HarfBuzz
Software.logo
HarfBuzz.svg
Software.logo_size
x64px
Software.author
The FreeType Project
Software.developer
Behdad Esfahbod, Khaled Hosny
Software.programming language
C++
Software.operating system
Unix-like, Windows, OpenHarmony
Software.genre
Software development library
Software.license
MIT

via Wikipedia infobox

Official website

Link to the official site · not written by Vinony

Source code

Link to the source-code README · not written by Vinony

Wikidata facts

Named after
OpenType Font
Official website
harfbuzz.org
Show 8 more facts
software quality assurance
continuous integration
user manual URL
harfbuzz.github.io
programmed in
C
software version identifier
14.2.0
source code repository URL
github.com/harfbuzz/harfbuzz
copyright license
MIT License
Sources (5)

via Wikidata · CC0

~6 min read

Encyclopedic overview

6 sections
Contents
  • History
  • Architecture
  • Users
  • See also
  • References
  • External links

HarfBuzz (loose transliteration of Persian calque harf-bāz, literally "open type") is an open-source text shaping engine written in C++. Text shaping is the process of converting a sequence of Unicode code points into the correct glyph identifiers and precise positions needed to render text on screen or in print. For scripts where characters change shape depending on their neighbours (such as Arabic, Devanagari, or Tamil), text shaping ensures that the right glyph forms are selected and joined correctly. Without it, text renderers would display raw disconnected code points rather than readable words.

HarfBuzz takes a string of Unicode text, a font file, and information about the writing script and language as input. It returns a list of glyph IDs and their x/y positions, which a rendering engine such as Cairo or Skia then uses to draw the text. The library supports multiple font technologies, including OpenType, Apple Advanced Typography (AAT), and SIL Graphite.

Excerpted from Wikipedia’s “HarfBuzz” article, available under the CC BY-SA 4.0 licence.