[中文]

Barcode

Barcode generation with LVGL. Uses code128 by fhunleth.

Usage

Enable LV_USE_BARCODE in lv_conf.h.

Use lv_barcode_create() to create a barcode object, and use lv_barcode_update() to generate a barcode.

Call lv_barcode_set_scale() to adjust scaling, call lv_barcode_set_dark_color() and lv_barcode_set_light_color() adjust color, call lv_barcode_set_direction() will set direction to display, and call lv_barcode_update() again to regenerate the barcode.

Notes

  • It is best not to manually set the width of the barcode, because when the width of the object is lower than the width of the barcode, the display will be incomplete due to truncation.

  • The scale adjustment can only be an integer multiple, for example, lv_barcode_set_scale(barcode, 2) means 2x scaling.

  • The direction adjustment can be LV_DIR_HOR or LV_DIR_VER

Example

[中文]

Create a Barcode

#include "../../lv_examples.h"
#if LV_USE_BARCODE && LV_BUILD_EXAMPLES

/**
 * Create a Barcode
 */
void lv_example_barcode_1(void)
{
    lv_color_t bg_color = lv_palette_lighten(LV_PALETTE_LIGHT_BLUE, 5);
    lv_color_t fg_color = lv_palette_darken(LV_PALETTE_BLUE, 4);

    lv_obj_t * barcode = lv_barcode_create(lv_screen_active());
    lv_obj_set_height(barcode, 50);
    lv_obj_center(barcode);

    /*Set color*/
    lv_barcode_set_dark_color(barcode, fg_color);
    lv_barcode_set_light_color(barcode, bg_color);

    /*Add a border with bg_color*/
    lv_obj_set_style_border_color(barcode, bg_color, 0);
    lv_obj_set_style_border_width(barcode, 5, 0);

    /*Set data*/
    lv_barcode_update(barcode, "https://lvgl.io");
}

#endif

API

code128.h