Tiny TTF Font Engine

The lv_tiny_ttf extension allows using TrueType fonts in LVGL using the stb_truetype 3rd-Party Library.

Edit on GitHub

The lv_tiny_ttf extension allows using TrueType fonts in LVGL using the stb_truetype 3rd-Party Library.

For a detailed introduction, see: https://github.com/nothings/stb.

Usage

When enabled in lv_conf.h by setting LV_USE_TINY_TTF to 1, lv_tiny_ttf_create_data(data, data_size, font_size) can be used to create a TTF font instance with the specified line height. You can then use that font anywhere lv_font_t is accepted.

By default, the TTF or OTF file must be embedded as an array, either in a header, or loaded into RAM in order to function.

However, if LV_TINY_TTF_FILE_SUPPORT is enabled (i.e. 1), lv_tiny_ttf_create_file(path, font_size) will also be available, allowing tiny_ttf to stream from a file. The file must remain open the entire time the font is being used.

After a font is created, you can change the font size in pixels by using lv_tiny_ttf_set_size(font, font_size).

By default, a font will cache data for up to 256 glyph elements to speed up rendering. This maximum can be changed by using

lv_tiny_ttf_create_data_ex(data, data_size, font_size, kerning, cache_size)

or lv_tiny_ttf_create_file_ex(path, font_size, kerning, cache_size) (when available). The cache size is indicated in number of entries. The kerning argument will be one of the LV_FONT_KERNING_... values, indicating whether to allow kerning, if supported, or disable.

Examples

Open a font with Tiny TTF from data array

Load a font with Tiny_TTF from file

Change font size with Tiny_TTF

API

How is this guide?

Last updated on

On this page