Jump to content

HarfBuzz

From Wikipedia, the free encyclopedia
Open source text shaping library

HarfBuzz
Original authorThe FreeType Project
DevelopersBehdad Esfahbod, Khaled Hosny[1]
Stable release12.3.2[2] (24 January 2026; 2 days ago (24 January 2026)) [+-]
Repository
Written inC++
Operating systemUnix-like, Windows
TypeSoftware development library
LicenseMIT
Websiteharfbuzz.github.io

HarfBuzz (loose transliteration of Persian calque Hrfbz harf-baz, literally "open type")[3][4] is a software library for supporting 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.[3][5]

History

[edit]

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.[3] In 2013, Behdad Esfahbod won the O'Reilly Open Source Award for his work on HarfBuzz.[6]

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.[7][8][9][10][11]
  • 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[12]
  • 4.0 more than 65536 Glyphs and metrics supported[13]
  • 4.3 major speed up[14]
  • 5.0 BE Fonts support[15]
  • 5.2 Unicode 15 support[16]
  • 7.0 introduced new APIs, new command-line utility, font emboldening support and reduced memory usage[17]
  • 8.0 introduced support for using WebAssembly-based shaper embedded in fonts[18]

Users

[edit]

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:

HarfBuzz is used directly by many applications, including:

See also

[edit]

References

[edit]
  1. ^ "State of Text Rendering 2024". behdad.org. Retrieved 1 May 2025.
  2. ^ harfbuzz. "Release 12.3.2 * harfbuzz/harfbuzz". Retrieved 24 January 2026.
  3. ^ a b c d Byfield, Bruce (19 December 2017). "HarfBuzz brings professional typography to the desktop". LWN.net.
  4. ^ "HarfBuzz". freedesktop.org.
  5. ^ "HarfBuzz Official website". Retrieved 10 November 2012.
  6. ^ "O'Reilly Open Source Awards: OSCON 2013". 26 July 2013. Archived from the original on 18 June 2015. Retrieved 25 September 2014.
  7. ^ HarfBuzz 1.0 Implements Microsoft's Universal Shaping Engine Released
  8. ^ HarfBuzz 1.4 Brings OpenType GX / Font Variations
  9. ^ HarfBuzz 1.8 Released With Unicode 11 Support
  10. ^ HarfBuzz 2.0 Released For Advancing Open-Source Text Shaping
  11. ^ HarfBuz articles on Phoronix
  12. ^ "Release 3.0.0 * harfbuzz/harfbuzz". GitHub. Retrieved 26 May 2023.
  13. ^ "HarfBuzz 4.0 Released for This Open-Source Text Shaping Library".
  14. ^ "HarfBuzz 4.3 Released with Big Performance Improvements".
  15. ^ "HarfBuzz 5.0 Released with Progress on Supporting the "Boring Expansion" Font Spec".
  16. ^ "HarfBuzz 5.2 Released with Unicode 15 Support".
  17. ^ "HarfBuzz 7.0 Text Shaping Engine Released".
  18. ^ "HarfBuzz 8.0 Released - Introduces Shaper for WebAssembly within Font Files".
  19. ^ "HarfBuzz". doc.dl.playstation.net. Retrieved 26 May 2019.
  20. ^ "JEP 258: HarfBuzz Font-Layout Engine". OpenJDK Enhancement Proposals. Retrieved 20 December 2017.
  21. ^ "Flutter Engine Wiki". GitHub. Retrieved 24 March 2025.
  22. ^ Engine, Godot. "Complex text layouts progress report #1". Godot Engine. Retrieved 12 September 2024.
  23. ^ Engine, Godot. "Godot 4.0 sets sail: All aboard for new horizons". Godot Engine. Retrieved 12 September 2024.
  24. ^ "Announcing Full RTL Language Support". Unity Discussions. 28 October 2024. Retrieved 18 November 2024.
  25. ^ "OpenHarmony/third_party_harfbuzz". Gitee (in Chinese (China)). Retrieved 13 March 2025.
  26. ^ "LibreOffice 4.1 ReleaseNotes". The Document Foundation. 30 July 2013. Retrieved 6 October 2019.
  27. ^ LibreOffice 5.3 Enables New Layout Engine By Default
  28. ^ "Scribus 1.5.3 Released". 22 May 2017. Retrieved 6 June 2018.
  29. ^ "Unified Text Engine in Photoshop". 7 June 2022. Retrieved 25 May 2023.
  30. ^ "Feature summary of InDesign (October 2023 release)". 30 October 2023.
  31. ^ "Debugging Data Corruption with Emscripten | Figma Blog". Figma. 7 November 2016. Retrieved 12 September 2024.
  32. ^ "Rasmus Andersson on Twitter: "Figma uses FreeType and Harfbuzz for font layout..." 30 May 2020. Archived from the original on 30 May 2020. Retrieved 12 September 2024.
  33. ^ Hosny, Khaled (12 March 2013). "[XeTeX] XeTeX 0.9999.0 released". TUG. Retrieved 12 September 2024.
  34. ^ Hosny, Khaled (2013). "What is new in XeTeX 0.9999?" (PDF). TUGboat. 34 (2): 121.
  35. ^ "[Dev-luatex] Luatex 1.11.1 announcement - dev-luatex - NTG Mailing Lists". mailman.ntg.nl. Retrieved 12 September 2024.
  36. ^ Hosny, Khaled (2019). "Bringing world scripts to LuaTeX: The HarfBuzz experiment" (PDF). TUGboat. 40 (1): 38-43.
  37. ^ "Middle Eastern Support in QuarkXPress 2025". www.quark.com. Retrieved 17 July 2025.
[edit]
Software
and libraries
Licenses
Operating system,
corporate and
professional
Government
typefaces
Other
typefaces
Groups and
people