HarfBuzz

HarfBuzz
Original author(s)The FreeType Project
Developer(s)Behdad Esfahbod
Stable release8.3.0 (11 November 2023; 11 days ago (2023-11-11)) [±]
Repository
Written inC++
Operating systemUnix-like, Windows
TypeSoftware development library
LicenseMIT
Websiteharfbuzz.github.io Edit this on Wikidata

HarfBuzz (loose transliteration of Persian calque حرف‌باز harf-bāz, literally "open type") is a software development library for text shaping, which is the process of converting Unicode text to glyph indices and positions. The newer version, New HarfBuzz (2012–), targets various font technologies while the first version, Old HarfBuzz (2006–2012), targeted only OpenType fonts.

History

Behdad Esfahbod, developer of HarfBuzz

HarfBuzz evolved from code that was originally part of the FreeType project. It was then developed separately in Qt and Pango. Then it was merged back into a common repository with an MIT license. This was Old HarfBuzz, which is no longer being developed, as the path going forward is New HarfBuzz. In 2013, Behdad Esfahbod won the O’Reilly Open Source Award for his work on HarfBuzz.

Important milestones for New HarfBuzz include:

  • 0.9.2, SIL Graphite support
  • 1.0 includes Universal Shaping Engine concepts from Microsoft
  • 1.4 with OpenType font variation support
  • 1.6 with Unicode 10 support
  • 1.8 with Unicode 11 support
  • 2.0 with Apple Advanced Typography (AAT) shaping support.
  • 2.1 with color fonts support and improved major AAT Shaping features.
  • 2.4 Unicode 12 support
  • 2.6.7 Unicode 13 support
  • 3.0 stable font subsetter API, Unicode 14 support
  • 4.0 more than 65536 Glyphs and metrics supported
  • 4.3 major speed up
  • 5.0 BE Fonts support
  • 5.2 Unicode 15 support
  • 7.0 introduced new APIs, new command-line utility, font emboldening support and reduced memory usage
  • 8.0 introduced support for using WebAssembly-based shaper embedded in fonts

Users

Most applications don't use HarfBuzz directly, but use a UI toolkit library that integrates with it. HarfBuzz is used by the UI libraries of GNOME (GTK+), KDE (Qt), ChromeOS (Skia), PlayStation 4, Android, Java, and Flutter; and directly by applications Chromium, Firefox, LibreOffice (from version 4.1 on Linux only, from 5.3 on all platforms), Scribus, Inkscape, Adobe Photoshop (since version 23.0), and Adobe InDesign (when using World Ready Composer since InDesign 19.0).

See also


This page was last updated at 2023-11-24 02:36 UTC. Update now. View original page.

All our content comes from Wikipedia and under the Creative Commons Attribution-ShareAlike License.


Top

If mathematical, chemical, physical and other formulas are not displayed correctly on this page, please useFirefox or Safari