HarfBuzz 5.0 Released With Progress On Supporting The "Boring Expansion" Font Spec
HarfBuzz is the open-source text shaping engine that is widely used by many different libraries and applications. The HarfBuzz code is critical to the Linux desktop and many open-source applications while this weekend is celebrating its big "5.0" release. With HarfBuzz 5.0 the developers have been working on the "Boring Expansion" font spec support.
A number of the changes with HarfBuzz 5.0 are concentrated around "BE" Fonts support. That "BE" has been referred to as the "Boring Expansion" to the Open Font Format and some references as well to the "Better Engineered" Font Formats.
The "Boring Expansion" spec aims to overcome Open Font Format's limitation of 65k glyphs per file so that potentially millions of glyphs could be stored within font files. Bumping the 65k limit is needed for CJK fonts, Pan-Unicode fonts surpassing the current limits, better embracing Progressive Font Enrichment, and COLR fonts may exhaust the limit too.
Google Fonts has been involved with this "BE" specification and working to resolve the issues currently hitting the Open Font Format.
More details on that effort can be found via the boring-expansion-spec on GitHub. Under the BE-Fonts umbrella, once working on the expansion spec there are tentative plans for better ergonomics and better emulation around font formats. This Google Docs slideshow has more details on the BE font effort.
With HarfBuzz 5.0 today there is now support for fonts with more than 65k glyphs in more tables, supporting version 2 of the AVAR table, and other changes from this boring-expansion-spec work.
HarfBuzz 5.0 also includes a number of fixes, improved interaction between multiple cursive attachments, improved subsetting of the COLR table, improved API fuzzing, build fixes, and other work. Downloads and more details on HarfBuzz 5.0 via GitHub.
A number of the changes with HarfBuzz 5.0 are concentrated around "BE" Fonts support. That "BE" has been referred to as the "Boring Expansion" to the Open Font Format and some references as well to the "Better Engineered" Font Formats.
The "Boring Expansion" spec aims to overcome Open Font Format's limitation of 65k glyphs per file so that potentially millions of glyphs could be stored within font files. Bumping the 65k limit is needed for CJK fonts, Pan-Unicode fonts surpassing the current limits, better embracing Progressive Font Enrichment, and COLR fonts may exhaust the limit too.
boring-expansion-spec
Google Fonts has been involved with this "BE" specification and working to resolve the issues currently hitting the Open Font Format.
The proposed changes, taken as a whole, allow us to create compact pan-Unicode fonts made up of reusable parts that are built using enhanced variation capabilities. Further, the designer is empowered to separate how the parts are crafted and assembled from how they are presented to the user.
More details on that effort can be found via the boring-expansion-spec on GitHub. Under the BE-Fonts umbrella, once working on the expansion spec there are tentative plans for better ergonomics and better emulation around font formats. This Google Docs slideshow has more details on the BE font effort.
With HarfBuzz 5.0 today there is now support for fonts with more than 65k glyphs in more tables, supporting version 2 of the AVAR table, and other changes from this boring-expansion-spec work.
HarfBuzz 5.0 also includes a number of fixes, improved interaction between multiple cursive attachments, improved subsetting of the COLR table, improved API fuzzing, build fixes, and other work. Downloads and more details on HarfBuzz 5.0 via GitHub.
18 Comments