lv_font_fmt_txt.h
Enums
Functions
-
const void *lv_font_get_bitmap_fmt_txt(lv_font_glyph_dsc_t *g_dsc, lv_draw_buf_t *draw_buf)
Used as
get_glyph_bitmap
callback in lvgl's native font format if the font is uncompressed.- Parameters:
g_dsc -- the glyph descriptor including which font to use, which supply the glyph_index and format.
draw_buf -- a draw buffer that can be used to store the bitmap of the glyph, it's OK not to use it.
- Returns:
pointer to an A8 bitmap (not necessarily bitmap_out) or NULL if
unicode_letter
not found
-
bool lv_font_get_glyph_dsc_fmt_txt(const lv_font_t *font, lv_font_glyph_dsc_t *dsc_out, uint32_t unicode_letter, uint32_t unicode_letter_next)
Used as
get_glyph_dsc
callback in lvgl's native font format if the font is uncompressed.- Parameters:
font -- pointer to font
dsc_out -- store the result descriptor here
unicode_letter -- a UNICODE letter code
unicode_letter_next -- the unicode letter succeeding the letter under test
- Returns:
true: descriptor is successfully loaded into
dsc_out
. false: the letter was not found, no data is loaded todsc_out
-
struct lv_font_fmt_txt_glyph_dsc_t
- #include <lv_font_fmt_txt.h>
This describes a glyph.
Public Members
-
uint32_t bitmap_index
Start index of the bitmap. A font can be max 4 GB.
-
uint32_t adv_w
Draw the next glyph after this width. 28.4 format (real_value * 16 is stored).
-
uint16_t box_w
Width of the glyph's bounding box
-
uint16_t box_h
Height of the glyph's bounding box
-
int16_t ofs_x
x offset of the bounding box
-
int16_t ofs_y
y offset of the bounding box. Measured from the top of the line
-
uint32_t bitmap_index
-
struct lv_font_fmt_txt_cmap_t
- #include <lv_font_fmt_txt.h>
Map codepoints to a
glyph_dsc
s Several formats are supported to optimize memory usage See https://github.com/lvgl/lv_font_conv/blob/master/doc/font_spec.mdPublic Members
-
uint32_t range_start
First Unicode character for this range
-
uint16_t range_length
Number of Unicode characters related to this range. Last Unicode character = range_start + range_length - 1
-
uint16_t glyph_id_start
First glyph ID (array index of
glyph_dsc
) for this range
-
const uint16_t *unicode_list
-
const void *glyph_id_ofs_list
if(type == LV_FONT_FMT_TXT_CMAP_FORMAT0_...) it's
uint8_t *
if(type == LV_FONT_FMT_TXT_CMAP_SPARSE_...) it'suint16_t *
-
uint16_t list_length
Length of
unicode_list
and/orglyph_id_ofs_list
-
lv_font_fmt_txt_cmap_type_t type
Type of this character map
-
uint32_t range_start
-
struct lv_font_fmt_txt_kern_pair_t
- #include <lv_font_fmt_txt.h>
A simple mapping of kern values from pairs
-
struct lv_font_fmt_txt_kern_classes_t
- #include <lv_font_fmt_txt.h>
More complex but more optimal class based kern value storage
Public Members
-
const int8_t *class_pair_values
left_class_cnt * right_class_cnt value
-
const uint8_t *left_class_mapping
Map the glyph_ids to classes: index -> glyph_id -> class_id
-
const uint8_t *right_class_mapping
Map the glyph_ids to classes: index -> glyph_id -> class_id
-
uint8_t left_class_cnt
-
uint8_t right_class_cnt
-
const int8_t *class_pair_values
-
struct lv_font_fmt_txt_dsc_t
- #include <lv_font_fmt_txt.h>
Describe store for additional data for fonts
Public Members
-
const uint8_t *glyph_bitmap
The bitmaps of all glyphs
-
const lv_font_fmt_txt_glyph_dsc_t *glyph_dsc
Describe the glyphs
-
const lv_font_fmt_txt_cmap_t *cmaps
Map the glyphs to Unicode characters. Array of
lv_font_cmap_fmt_txt_t
variables
-
const void *kern_dsc
Store kerning values. Can be
lv_font_fmt_txt_kern_pair_t * or
lv_font_kern_classes_fmt_txt_t *depending on
kern_classes`
-
uint16_t kern_scale
Scale kern values in 12.4 format
-
uint16_t cmap_num
Number of cmap tables
-
uint16_t bpp
Bit per pixel: 1, 2, 3, 4, 8
-
uint16_t kern_classes
Type of
kern_dsc
-
uint16_t bitmap_format
storage format of the bitmap from
lv_font_fmt_txt_bitmap_format_t
-
const uint8_t *glyph_bitmap