harfbuzz-raku project is focused on Raku binding to the HarfBuzz
library and its functionality. In particular
- Text Shaping - The selection and positioning of glyphs to display text
- Font Subsetting - Reduction of a font to the set of used glyphs, e.g. for embedding in a PDF or for use as a web-page font.
At this stage, it is recommended that the HarfBuzz library is built from source, to get an up-to-date version that includes the HarfBuzz font subsetting library.
wget -q https://github.com/harfbuzz/harfbuzz/archive/2.7.4.tar.gz tar xvzf 2.7.4.tar.gz cd harfbuzz-2.7.4 ./autogen.sh make sudo make install sudo ldconfig
The various HarfBuzz Raku modules can then be installed, using an appropriate module manager, such as
zef. For example:
zef install HarfBuzz::Subset
Base HarfBuzz bindings. This distribution includes HarfBuzz::Shaper, which may be enough to perform basic shaping.
FreeType integration (via the Raku Font::FreeType module.
Note that HarfBuzz can load OpenType and TrueType format fonts directly. The FreeType integration most likely to be useful for other font formats, that can be loaded by Font::FreeType.
HarfBuzz/Cairo integration for glyph positioning and display.
Binding to HarfBuzz’s font-subsetting capabilities.