Custom font not working


I have LVGL 9.1 on an ESP32 with the CYD running. Now I tried to get Umlauts by generating a custom font as described. However, I can see that this box replacing unknown characters changed in width after using my custom font but it is still this box and not the Umlaut.

I have used LV_FONT_DECLARE(umlauts); and the umlauts.c is in my project. The part of the code looks like this:

cont = lv_menu_cont_create(main_page);
label = lv_label_create(cont);
lv_style_set_text_font(&styleInfo, &umlauts);
lv_obj_add_style(label, &styleInfo, 0);
lv_obj_add_flag(label, LV_OBJ_FLAG_CLICKABLE);
lv_label_set_text(label, MY_SYMBOL_ABOUT " Über");
lv_obj_add_event_cb(label, GUI_menuentry_handler, LV_EVENT_CLICKED, label);

Source files are UTF8 and everyhing compiles well. What could I have missed here?

EDIT: typo

How did you generate font file? What params you used for converter?

 * Size: 18 px
 * Bpp: 8
 * Opts: --bpp 8 --size 18 --lcd --font FontAwesome5-Solid+Brands+Regular.woff --range 61737,62745 --font Montserrat-Regular.ttf --symbols äöüÄÖÜß --format lvgl -o umlauts.c

what if you try to draw just all your umlauts lv_label_set_text(label, "äöüÄÖÜß");

This just gives me seven boxes. I also tried only one of the symbol which is the same.

I have a discussion about fonts here, hope it helps

Thanks for the answer but I do not have a problem generating the font but displaying it.

It seems settings are correct .
I suppose LV_TXT_ENC_UTF8 defined in your lv_conf.h or LV_TXT_ENC defined as LV_TXT_ENC_UTF8. Usually lvgl draws rects instead of symbols if glyph for appropriate code is not included in font-file. Could you attach full font-file?

Sure, lv_conf.h says: #define LV_TXT_ENC LV_TXT_ENC_UTF8

File is attached.
umlauts.c (24.1 KB)

What about your styleInfo? is it global or static ?
also you use compressed font - did you defined LV_USE_FONT_COMPRESSED ?

also in your font file .subpx = LV_FONT_SUBPX_HOR,. did you enabled LV_USE_FONT_SUBPX ?

Damn, I did not activate the compressed support. Thanks a lot!