logo
Free, unlimited AI code reviews that run on commit
git-lrc git-lrc GitHub Install Now We'd appreciate a star git-lrc - Free, unlimited AI code reviews that run on commit | Product Hunt git-lrc - Free, unlimited AI code reviews that run on commit | Product Hunt

fcft_rasterize_text_run_utf32 - rasterize a series of glyphs for a text string

Description

fcft_rasterize_text_run_utf32()  shapes  and  rasterizes  the  UTF-32  encoded 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.

Name

       fcft_rasterize_text_run_utf32 - rasterize a series of glyphs for a text string

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 contains the character  offsets  (in  the
       original string) of each corresponding 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 destroyed.

       The text-run must be free:d with fcft_text_run_destroy().

See Also

fcft_text_run_destroy(), fcft_rasterize_char_utf32(), fcft_rasterize_grapheme_utf32()

3.3.1                                              2025-03-22                   fcft_rasterize_text_run_utf32(3)

Synopsis

#include<fcft/fcft.h>structfcft_text_run*fcft_rasterize_text_run_utf32(structfcft_font*font,size_tlen,constuint32_ttext[staticlen],enumfcft_subpixelsubpixel);

See Also