HarfBuzz 2.8.1

HarfBuzz is a text shaping engine. It primarily supports OpenType, but also Apple Advanced Typography. HarfBuzz is used in Android, Chrome, ChromeOS, Firefox, GNOME, GTK+, KDE, LibreOffice, OpenJDK, PlayStation, Qt, XeTeX, and other places.

Tags c++ c fonts text-shaping
License Mixed
State initial

Recent Releases

2.8.106 May 2021 06:25 minor feature: 2.8.1 Subsetter now fully supports GSUB/GPOS/GDEF tables (including variations); as. such, layout tables are retained by subsetter by default. (Garret Rieger, Qunxin Liu). Build scripts no longer check for FontConfig as HarfBuzz does not use it. hb-view supports iTerm2 and kitty inline image protocols (Khaled Hosny). it can also use Chafa for terminal graphics if available (Hans Petter Jansson).
2.8.017 Mar 2021 03:15 minor feature: Shape joining scripts other than Arabic/Syriac using the Universal Shaping Engine. Previously these were shaped using the generalized Arabic shaper. (David Corbett). regression in shaping of U+0B55 ORIYA SIGN OVERLINE. (David Corbett). Update language tags. (David Corbett). Variations: reduce error: do not round each interpolated delta. (Just van Rossum). Documentation improvements. (Khaled Hosny, Nathan Willis). Subsetter improvements: subsets most, if not all, lookup types now. (Garret Rieger, Qunxin Liu). Fuzzer-found and other improvements when memory failures happen. (Behdad). Removed most atomic implementations now that we have C++11 atomic impl. (Behdad). General codebase upkeep; using more C++11 features: constexpr constructors, etc. (Behdad).
2.7.428 Dec 2020 03:20 minor feature: Missing --enable-introspection configure option from previous release tarball. Documentation updates.
2.7.324 Dec 2020 15:45 minor feature: Update USE shaper to 2020-08-13 specification, and other improvements. Don t disable liga feature in myanmar shaper, to match Uniscribe. Improvements to language and script tags handling. Update language system tag registry to OpenType 1.8.4. Support for serializing and deserializing Unicode buffers. Serialized buffers are now delimited with or based on whether it is a Unicode or glyphs buffer. Increase buffer work limits to handle fonts with many complex lookups. Handle more shaping operations in trace output. Memory access. More OOM. Improved documentation. Build system improvements. New API: +hb_buffer_has_positions(). +hb_buffer_serialize(). +hb_buffer_serialize_unicode(). +hb_buffer_deserialize_unicode().
2.7.114 Aug 2020 06:25 minor feature: ot-funcs now handles variable empty glyphs better when hvar/vvar isn't present. Reverted a GDEF processing regression. A couple of to handle OOM better.
2.7.026 Jul 2020 03:25 minor feature: Use an implementation for round that always rounds up, some minor fluctuations Are expected on var font specially when hb-ot callback is used. an AAT's kerx on broken rendering of Devanagari Sangam MN. Remove AAT's lcar table support from _get_ligature_carets API, not even much Use on macOS installed fonts (only two files). GDEF support is the recommended One and expected to work properly after two releases ago. Minor memory to handle OOM better specially in hb-ft. Minor.so files versioning scheme change and remove stable/unstable scheme Differences, was never used in practice (always default to stable scheme). We are now suggesting careful packaging of the library using meson,https://github.com/harfbuzz/harfbuzz/wiki/Notes-on-migration-to-meson For more information. Distribution package URL is changed, either use GitHub generated tarballs,https://github.com/harfbuzz/harfbuzz/archive/ pkgver.tar.gz or, even more preferably use commit hash of the release and git checkouts like,git+https://github.com/harfbuzz/harfbuzz#commit= commit.
2.6.823 Jun 2020 03:15 minor feature: New API to fetch glyph alternates from GSUB table. hb-coretext build for macOS 10.10. Meson build, cmake port removal is postponed but please prepare for it and give us feedback. Autotools is still our main build system however please consider experimenting with meson also for packaging the library. New API: +hb_ot_layout_lookup_get_glyph_alternates().
2.6.704 Jun 2020 03:15 minor feature: Update to Unicode 13.0.0. Hb_ot_layout_get_ligature_carets for fonts without lcar table, it was Completely broken for all the other fonts since 2.1.2. As a part of our migration to meson, this release will be the last one to provide cmake port files but autotools still is our main build system. There is a possibility that the next version or the after be released Using meson.
2.6.518 Apr 2020 03:15 minor feature: Add experimental meson build system. Autotools is still the primary and supported build system. AAT is now always preferred for horizontal scripts when both AAT and OT layout tables exist at the same time. Subsetter improvements. New API: +hb_ft_font_lock_face(). +hb_ft_font_unlock_face().
2.6.202 Oct 2019 05:59 minor feature: https://github.com/harfbuzz/harfbuzz/blob/master/NEWS
2.2.602 Oct 2019 02:05 minor feature: https://github.com/harfbuzz/harfbuzz/blob/master/NEWS