You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
47 lines
1.2 KiB
C
47 lines
1.2 KiB
C
2 years ago
|
#include "../../lv_examples.h"
|
||
|
#if LV_BUILD_EXAMPLES
|
||
|
#if LV_USE_FREETYPE
|
||
|
|
||
|
/**
|
||
|
* Load a font with FreeType
|
||
|
*/
|
||
|
void lv_example_freetype_1(void)
|
||
|
{
|
||
|
/*Create a font*/
|
||
|
static lv_ft_info_t info;
|
||
|
/*FreeType uses C standard file system, so no driver letter is required.*/
|
||
|
info.name = "./lvgl/examples/libs/freetype/Lato-Regular.ttf";
|
||
|
info.weight = 24;
|
||
|
info.style = FT_FONT_STYLE_NORMAL;
|
||
|
info.mem = NULL;
|
||
|
if(!lv_ft_font_init(&info)) {
|
||
|
LV_LOG_ERROR("create failed.");
|
||
|
}
|
||
|
|
||
|
/*Create style with the new font*/
|
||
|
static lv_style_t style;
|
||
|
lv_style_init(&style);
|
||
|
lv_style_set_text_font(&style, info.font);
|
||
|
lv_style_set_text_align(&style, LV_TEXT_ALIGN_CENTER);
|
||
|
|
||
|
/*Create a label with the new style*/
|
||
|
lv_obj_t * label = lv_label_create(lv_scr_act());
|
||
|
lv_obj_add_style(label, &style, 0);
|
||
|
lv_label_set_text(label, "Hello world\nI'm a font created with FreeType");
|
||
|
lv_obj_center(label);
|
||
|
}
|
||
|
#else
|
||
|
|
||
|
void lv_example_freetype_1(void)
|
||
|
{
|
||
|
/*TODO
|
||
|
*fallback for online examples*/
|
||
|
|
||
|
lv_obj_t * label = lv_label_create(lv_scr_act());
|
||
|
lv_label_set_text(label, "FreeType is not installed");
|
||
|
lv_obj_center(label);
|
||
|
}
|
||
|
|
||
|
#endif
|
||
|
#endif
|