FreeBSD Manual Pages
fcft_rasterize_text_run_utf32(3) fcft fcft_rasterize_text_run_utf32(3) NAME fcft_rasterize_text_run_utf32 - rasterize a series of glyphs for a text string SYNOPSIS #include <fcft/fcft.h> struct fcft_text_run *fcft_rasterize_text_run_utf32( struct fcft_font *font, size_t len, const uint32_t text[static len], enum fcft_subpixel subpixel); DESCRIPTION fcft_rasterize_text_run_utf32() shapes and rasterizes the UTF-32 en- coded Unicode string text into a series of glyphs using the primary font, and possibly one or more fallback fonts, in font. subpixel allows you to specify which subpixel mode to use. See fcft_rasterize_char_utf32() for details. The string is first segmented into grapheme clusters using utf8proc. Each grapheme is assigned a font using the normal font lookup rules (see fcft_rasterize_char_utf32()). Next, HarfBuzz is used to guess each grapheme's script (~language). Consecutiv graphemes that both have been assigned the same font, and belong to the same script are merged into a "partial" text run. Finally, each partial text run is shaped with HarfBuzz. RETURN VALUE On error, NULL is returned. On success, a pointer to a dynamically allocated text-run is returned: struct fcft_text_run { const struct fcft_glyph **glyphs; int *cluster; size_t count; }; Both glyphs and cluster are arrays with count elements. cluster con- tains the character offsets (in the original string) of each corre- sponding glyph. Note that the glyphs' cols member are invalid. The text-run is not cached in fcft. The calling application may cache it for as long as it likes, including after the font has been de- stroyed. The text-run must be free:d with fcft_text_run_destroy(). SEE ALSO fcft_text_run_destroy(), fcft_rasterize_char_utf32(), fcft_raster- ize_grapheme_utf32() 3.3.1 2025-04-12 fcft_rasterize_text_run_utf32(3)
NAME | SYNOPSIS | DESCRIPTION | RETURN VALUE | SEE ALSO
Want to link to this manual page? Use this URL:
<https://man.freebsd.org/cgi/man.cgi?query=fcft_rasterize_text_run_utf32&sektion=3&manpath=FreeBSD+Ports+14.3.quarterly>