四川省建设厅网站为什么打不开,华为官网商城手机价格,单页营销型网站,厦门关键词优化网站在lvgl中读取图片文件时#xff0c;被读取的图片具有上限#xff0c;也就是2048像素。这会造成两个非预期的结果#xff1a;
超过2048像素的部分会被裁去。表示图片的结构体lv_img_t中的w和h变量值是图片像素被2048求余。例如#xff0c;当一个图片高为2048像素时#xf…在lvgl中读取图片文件时被读取的图片具有上限也就是2048像素。这会造成两个非预期的结果
超过2048像素的部分会被裁去。表示图片的结构体lv_img_t中的w和h变量值是图片像素被2048求余。例如当一个图片高为2048像素时h的值被赋值为1。此时如果使用lv_img_set_offset_y函数修改图片偏移量lvgl会以1作为图片高度进行偏移量的计算。
解决办法是修改项目目录下的./lvgl/src/draw/lv_img_buf.h文件中的lv_img_header_t结构体。其中的w和h成员限制了图片的上限。图片的高宽上限分别为 2 h 2^h 2h和 2 w 2^w 2w。
例如将w和h修改为13时
typedef struct {uint32_t cf : 5; /*Color format: See lv_img_color_format_t*/uint32_t always_zero : 3; /*It the upper bits of the first byte. Always zero to look like anon-printable character*/uint32_t reserved : 2; /*Reserved to be used later*/uint32_t w : 13; /*Width of the image map*/uint32_t h : 13; /*Height of the image map*/
} lv_img_header_t;此时图片高宽上限为8192像素。