Style

Change your color, font and be stylish

Style āđ€āļ›āđ‡āļ™āļ•āļąāļ§āļˆāļąāļ”āļāļēāļĢāļ„āļļāļ“āļŠāļĄāļšāļąāļ•āļīāđāļšāļšāļ•āđˆāļēāļ‡āđ†āļ‚āļ­āļ‡ screen āļĢāļ§āļĄāļ–āļķāļ‡ widget āļ—āļąāđ‰āļ‡āļŦāļĨāļēāļĒāļ”āđ‰āļ§āļĒ āļāļēāļĢāļˆāļąāļ”āļāļēāļĢāļ„āļļāļ“āļŠāļĄāļšāļąāļ•āļīāļ‚āļ­āļ‡āļ•āļąāļ§ object āļ™āļĩāđ‰āļĄāļĩāļ—āļąāđ‰āļ‡āļāļēāļĢ āđ€āļ›āļĨāļĩāđˆāļĒāļ™āļŠāļĩ āļāļēāļĢāļ—āļģāđƒāļŦāđ‰āđ‚āļ›āļĢāđˆāļ‡āđāļŠāļ‡ āļāļēāļĢāļ•āļĩāļ‚āļ­āļš āļāļēāļĢāļˆāļąāļ”āļāļēāļĢāļ‚āļ­āļšāđ€āļ‚āļ•āļ‚āļ­āļ‡āđāļ•āđˆāļĨāļ° object āļ§āđˆāļēāđƒāļŦāđ‰āļŠāļīāļ”āļāļąāļ™āđ„āļ”āđ‰āļĄāļēāļāļŠāļļāļ”āđāļ„āđˆāđ„āļŦāļ™

āļŠāļĢāđ‰āļēāļ‡ Style

āļāļēāļĢāļŠāļĢāđ‰āļēāļ‡ style āļ‚āļķāđ‰āļ™āļĄāļēāļˆāļ°āđ€āļŦāļĄāļ·āļ­āļ™āļāļąāļšāļāļēāļĢāļ›āļĢāļ°āļāļēāļĻ Object āļ­āļ·āđˆāļ™āđ† āļ—āļąāđˆāļ§āđ„āļ›āđ‚āļ”āļĒāļāļēāļĢāļŠāļĢāđ‰āļēāļ‡ style āļˆāļ°āđƒāļŠāđ‰āļ„āļģāļŠāļąāđˆāļ‡āļ•āđˆāļ­āđ„āļ›āļ™āļĩāđ‰

static lv_style_t āļŠāļ·āđˆāļ­_style;
lv_style_init(&āļŠāļ·āđˆāļ­_style);

āļˆāļēāļāļ™āļąāđ‰āļ™āđ€āļĢāļēāļˆāļ°āđ„āļ”āđ‰ style āđ€āļ›āļĨāđˆāļēāđ†āļ‚āļ­āļ‡āđ€āļĢāļēāļ‚āļķāđ‰āļ™āļĄāļē āļˆāļēāļāļ™āļ™āļĩāđ‰āļāļēāļĢāļ›āļĢāļąāļšāđāļ•āđˆāļ‡āđƒāļ”āđ†āļāđ‡āļ•āļēāļĄāļ—āļĩāđˆāđƒāļŠāđˆāđ„āļ›āđƒāļ™ style āļ™āļĩāđ‰āļˆāļ°āļ—āļģāļŦāļ™āđ‰āļēāļ—āļĩāđˆāđ€āļ›āđ‡āļ™āđ€āļŦāļĄāļ·āļ­āļ™ template āđƒāļŦāđ‰āļāļąāļš object āļ­āļ·āđˆāļ™āđ†āļ—āļĩāđˆāđ€āļĢāļĩāļĒāļ style āļ™āļĩāđ‰āļĄāļēāđƒāļŠāđ‰

Background

āđ€āļ›āđ‡āļ™āļŸāļąāļ‡āļāđŒāļŠāļąāđˆāļ™āļˆāļąāļ” style āđ€āļāļĩāđˆāļĒāļ§āļāļąāļšāļžāļ·āđ‰āļ™āļŦāļĨāļąāļ‡āļ—āļąāđ‰āļ‡āļŦāļĄāļ” āļĢāļ§āļĄāļ–āļķāļ‡āļāļēāļĢāļˆāļąāļ”āļŠāļĩ āļāļēāļĢāđ„āļĨāđˆāļŠāļĩ āļāļēāļĢāļ•āļąāđ‰āļ‡āļ„āđˆāļēāļ„āļ§āļēāļĄāđ‚āļ›āļĢāđˆāļ‡āđāļŠāļ‡ āđ‚āļ”āļĒāļŠāļļāļ”āļ„āļģāļŠāļąāđˆāļ‡āļ—āļĩāđˆāđ€āļāļĩāđˆāļĒāļ§āļ‚āđ‰āļ­āļ‡āļāļąāļšāļāļēāļĢāļˆāļąāļ”āļāļēāļĢāļžāļ·āđ‰āļ™āļŦāļĨāļąāļ‡āļĄāļĩāļ”āļąāļ‡āļ•āđˆāļ­āđ„āļ›āļ™āļĩāđ‰

lv_style_set_radius(&style, 5); // āļĨāļšāļĄāļļāļĄ object āđƒāļŦāđ‰āđ€āļ›āđ‡āļ™āđ‚āļ„āđ‰āļ‡āļĢāļąāļĻāļĄāļĩ 5
/*Make a gradient*/
lv_style_set_bg_opa(&style, LV_OPA_COVER); // āļ•āļąāđ‰āļ‡āļ„āđˆāļēāļ„āļ§āļēāļĄāđ‚āļ›āļĢāđˆāļ‡āđāļŠāļ‡āđ‚āļ”āļĒāļ„āđˆāļēāļ„āļ§āļēāļĄāđƒāļŠ āđ€āļ›āļĨāļĩāđˆāļĒāļ™āļˆāļēāļ LV_OPA_COVER(āđ„āļĄāđˆāļĄāļĩāđ‚āļ›āļĢāđˆāļ‡āđāļŠāļ‡) -> 0-255
lv_style_set_bg_color(&style, lv_palette_lighten(LV_PALETTE_GREY, 2));// āđ€āļ›āļĨāļĩāđˆāļĒāļ™āļŠāļĩāļžāļ·āđ‰āļ™āļŦāļĨāļąāļ‡āļŦāļĨāļąāļ [LV_PALLETTE_āļŠāļ·āđˆāļ­āļŠāļĩ] āļŦāļĢāļ·āļ­ lv_color_hex(0x000000) āļ•āļēāļĄāļ”āđ‰āļ§āļĒāļ„āļ§āļēāļĄāļŠāļ§āđˆāļēāļ‡āļŠāļĩ 1-5
lv_style_set_bg_grad_color(&style, lv_palette_main(LV_PALETTE_BLUE));// āļŠāļĩāļžāļ·āđ‰āļ™āļŦāļĨāļąāļ‡āļĢāļ­āļ‡
lv_style_set_bg_grad_dir(&style, LV_GRAD_DIR_VER);// āļ—āļīāļĻāļ—āļēāļ‡āļāļēāļĢ gradient āđ‚āļ”āļĒ LV_GRAD_DIR_VER = āđāļ™āļ§āļ•āļąāđ‰āļ‡, LV_GRAD_DIR_HOR = āđāļ™āļ§āļ™āļ­āļ™
/*Shift the gradient to the bottom*/
lv_style_set_bg_main_stop(&style, 128); // āļˆāļļāļ”āļ—āļĩāđˆāļŠāļĩāļŦāļĨāļąāļāđ€āļĢāļīāđˆāļĄ gradient (0-255)
lv_style_set_bg_grad_stop(&style, 192); // āļˆāļļāļ”āļ—āļĩāđˆāļŠāļĩāļĢāļ­āļ‡āđ€āļĢāļīāđˆāļĄ gradient (0-255)

Border

āļāļēāļĢāļ•āļąāđ‰āļ‡āļ„āđˆāļē style āļšāļ™āļ‚āļ­āļšāļ‚āļ­āļ‡āļ§āļąāļ•āļ–āļļ āđ€āļĢāļēāļŠāļēāļĄāļēāļĢāļ–āđ„āļŪāđ„āļĨāļ—āđŒāļ‚āļ­āļšāļ‚āļ­āļ‡āļ§āļąāļ•āļ–āļļāđ„āļ”āđ‰ āđ‚āļ”āļĒāļŸāļąāļ‡āļāđŒāļŠāļąāđˆāļ™āđ€āļāļĩāđˆāļĒāļ§āļāļąāļšāļāļēāļĢāļ•āļąāđ‰āļ‡āļ„āđˆāļēāļ‚āļ­āļšāļ‚āļ­āļ‡āļ§āļąāļ•āļ–āļļāļĄāļĩāļ”āļąāļ‡āļ•āđˆāļ­āđ„āļ›āļ™āļĩāđ‰

lv_style_set_border_color(&style, lv_palette_main(LV_PALETTE_BLUE)); //āđ€āļ›āļĨāļĩāđˆāļĒāļ™āļŠāļĩāļ‚āļ­āļš
lv_style_set_border_width(&style, 5);// āļ•āļąāđ‰āļ‡āļ„āļ§āļēāļĄāļāļ§āđ‰āļēāļ‡āļ‚āļ­āļ‡āļ‚āļ­āļš(pixel)
lv_style_set_border_opa(&style, LV_OPA_50); // āļ•āļąāđ‰āļ‡āļ„āđˆāļēāļ„āļ§āļēāļĄāđ‚āļ›āļĢāđˆāļ‡āđƒāļŠāļ‚āļ­āļ‡āļ‚āļ­āļšāđ€āļ›āđ‡āļ™ 50%
lv_style_set_border_side(&style, LV_BORDER_SIDE_BOTTOM | LV_BORDER_SIDE_RIGHT); // āđ€āļĨāļ·āļ­āļāđƒāļŦāđ‰āļĄāļĩāļ‚āļ­āļšāđāļ„āđˆāļ”āđ‰āļēāļ™āļĨāđˆāļēāļ‡āļāļąāļšāļ”āđ‰āļēāļ™āļ‚āļ§āļē

Outline

āđ€āļŠāđ‰āļ™āļ‚āļ­āļšāļ™āļ­āļ āļŠāđˆāļ§āļ™āļ™āļĩāđ‰āļˆāļ°āđ€āļ›āđ‡āļ™āļŸāļąāļ‡āļāđŒāļŠāļąāđˆāļ™āđ€āļāļĩāđˆāļĒāļ§āļāļąāļšāļāļēāļĢāļ•āļąāđ‰āļ‡āļ„āđˆāļēāļ•āđˆāļēāļ‡āđ†āļ‚āļ­āļ‡āđ€āļŠāđ‰āļ™āļ‚āļ­āļšāļ”āđ‰āļēāļ™āļ™āļ­āļ object āđ€āļĢāļēāļŠāļēāļĄāļēāļĢāļ–āļ•āļąāđ‰āļ‡āļ„āđˆāļēāđƒāļŦāđ‰ āļŦāļ™āļē /āļšāļēāļ‡ āļ•āļēāļĄāļ—āļĩāđˆāļ•āđ‰āļ­āļ‡āļāļēāļĢāđ„āļ”āđ‰ āļŠāļēāļĄāļēāļĢāļ–āļ•āļąāđ‰āļ‡āļ„āđˆāļēāļ„āļ§āļēāļĄāļŦāđˆāļēāļ‡āļĢāļ°āļŦāļ§āđˆāļēāļ‡āđ€āļŠāđ‰āļ™āļ‚āļ­āļšāļāļąāļšāļ•āļąāļ§āļ§āļąāļ•āļ–āļļāđ„āļ”āđ‰

lv_style_set_outline_width(&style, 2); //āļ•āļąāđ‰āļ‡āļ„āđˆāļēāļ„āļ§āļēāļĄāļāļ§āđ‰āļēāļ‡āļ‚āļ­āļ‡āđ€āļŠāđ‰āļ™āļ‚āļ­āļš (pixel)
lv_style_set_outline_color(&style, lv_palette_main(LV_PALETTE_BLUE));// āļ•āļąāđ‰āļ‡āļ„āđˆāļēāļŠāļĩāđ€āļŠāđ‰āļ™āļ‚āļ­āļš
lv_style_set_outline_pad(&style, 8); // āļ•āļąāđ‰āļ‡āļ„āđˆāļēāļ„āļ§āļēāļĄāļŦāđˆāļēāļ‡āļĢāļ°āļŦāļ§āđˆāļēāļ‡āđ€āļŠāđ‰āļ™āļ‚āļ­āļšāļāļąāļšobject (pixel)
lv_style_set_outline_opa(&style, LV_OPA_50); // āļ•āļąāđ‰āļ‡āļ„āđˆāļēāļ„āļ§āļēāļĄāđ‚āļ›āļĢāđˆāļ‡āđāļŠāļ‡āļ‚āļ­āļ‡āđ€āļŠāđ‰āļ™āļ‚āļ­āļš (0-255)

Shadow

āđ€āļ›āđ‡āļ™āļāļēāļĢāļ•āļąāđ‰āļ‡āļ„āđˆāļēāđƒāļŦāđ‰āļĄāļĩāđ€āļ‡āļēāļ‰āļēāļĒāļĄāļēāļˆāļēāļ object āđ‚āļ”āļĒāđ€āļĢāļēāļŠāļēāļĄāļēāļĢāļ–āļ•āļąāđ‰āļ‡āļ„āđˆāļēāļŠāļĩāļ‚āļ­āļ‡āđ€āļ‡āļē āđāļĨāļ°āļ•āļģāđāļŦāļ™āđˆāļ‡āļ‚āļ­āļ‡āđ€āļ‡āļēāđ„āļ”āđ‰ āđ‚āļ”āļĒāļŸāļąāļ‡āļāđŒāļŠāļąāđˆāļ™āđ€āļāļĩāđˆāļĒāļ§āļāļąāļšāļāļēāļĢāļ•āļąāđ‰āļ‡āļ„āđˆāļēāđ€āļ‡āļēāļ‚āļ­āļ‡āļ§āļąāļ•āļ–āļļāļĄāļĩāļ”āļąāļ‡āļ•āđˆāļ­āđ„āļ›āļ™āļĩāđ‰

lv_style_set_shadow_width(&style, 25); // āļ•āļąāđ‰āļ‡āļ„āđˆāļēāļ„āļ§āļēāļĄāđ€āļšāļĨāļ­āļ‚āļ­āļ‡āļ‚āļ­āļšāđ€āļ‡āļē
lv_style_set_shadow_color(&style, lv_palette_main(LV_PALETTE_BLUE));
lv_style_set_shadow_ofs_x(&style, 10); // āļ•āļģāđāļŦāļ™āđˆāļ‡āļ‚āļ­āļ‡āđ€āļ‡āļēāđƒāļ™āđāļāļ™ x
lv_style_set_shadow_ofs_y(&style, 20); // āļ•āļģāđāļŦāļ™āđˆāļ‡āļ‚āļ­āļ‡āđ€āļ‡āļēāđƒāļ™āđāļāļ™ y
lv_style_set_shadow_ofs_y(&style, 5); // āļ‚āļĒāļēāļĒāļ‚āļ™āļēāļ”āļ‚āļ­āļ‡āđ€āļ‡āļē

Text

āļŸāļąāļ‡āļāđŒāļŠāļąāđˆāļ™āđ€āļāļĩāđˆāļĒāļ§āļāļąāļšāļāļēāļĢāļ•āļąāđ‰āļ‡āļ„āđˆāļēāļ•āļąāļ§āļ­āļąāļāļĐāļĢ āđ„āļĄāđˆāļ§āđˆāļēāļˆāļ°āđ€āļ›āđ‡āļ™āđ€āļĨāļ·āļ­āļ font, āļ›āļĢāļąāļšāļ‚āļ™āļēāļ”, āđ€āļ›āļĨāļĩāđˆāļĒāļ™āļŠāļĩ āļ›āļĢāļąāļšāļŠāđˆāļ­āļ‡āđ„āļŸ āļ‚āļ­āļ‡āļ•āļąāļ§āļŦāļ™āļąāļ‡āļŠāļ·āļ­āđ„āļ”āđ‰ āđ‚āļ”āļĒāļŠāļļāļ”āļ„āļģāļŠāļąāđˆāļ‡āļ—āļąāđ‰āļ‡āļŦāļĄāļ”āļˆāļ°āļĄāļĩāļ”āļąāļ‡āļ™āļĩāđ‰

lv_style_set_text_color(&style, lv_palette_main(LV_PALETTE_BLUE)); // āļ›āļĢāļąāļšāļŠāļĩāļ•āļąāļ§āļŦāļ™āļąāļ‡āļŠāļ·āļ­
lv_style_set_text_letter_space(&style, 5); //āļ›āļĢāļąāļšāļŠāđˆāļ­āļ‡āđ„āļŸ
lv_style_set_text_line_space(&style, 20); //āļ›āļĢāļąāļšāļĢāļ°āļĒāļ°āđ€āļ§āđ‰āļ™āļšāļĢāļĢāļ—āļąāļ”
lv_style_set_text_decor(&style, LV_TEXT_DECOR_UNDERLINE); //āļ›āļĢāļąāļšāđāļ•āđˆāļ‡ āļ‚āļĩāļ”āđ€āļŠāđ‰āļ™āđƒāļ•āđ‰,āļ‚āļĩāļ”āļ†āđˆāļē
//lv_obj_set_style_text_font(ltr_label, &lv_font_montserrat_16, 0);

/*Create an object with the new style*/
lv_obj_t * obj = lv_label_create(lv_scr_act());
lv_obj_add_style(obj, &style, 0);
lv_label_set_text(obj, "Text of\n"
                       "a label");

lv_obj_center(obj);

āđ€āļĢāļēāļŠāļēāļĄāļēāļĢāļ–āļ”āļđ font āļ—āļĩāđˆāđƒāļŠāđ‰āļ‡āļēāļ™āđ„āļ”āđ‰āđƒāļ™āđ„āļŸāļĨāđŒ lv_conf.h āļšāļĢāļĢāļ—āļąāļ”āļ—āļĩāđˆ 265

āļāļēāļĢāļ™āļģ Style āđ„āļ›āđƒāļŠāđˆāļšāļ™ object

āđ€āļĢāļēāļŠāļēāļĄāļēāļĢāļ–āļ™āļģāđ„āļ›āđƒāļŠāđˆāđ„āļ”āđ‰āļ”āđ‰āļ§āļĒāļāļēāļĢāđƒāļŠāđ‰āļ„āļģāļŠāļąāđˆāļ‡āļ”āļąāļ‡āļ•āđˆāļ­āđ„āļ›āļ™āļĩāđ‰

lv_obj_add_style(obj, &style, 0);

Last updated

Was this helpful?