Ver código fonte

add: lvgl云编译支持启用png和bmp解码

https://gitee.com/openLuat/LuatOS/issues/I8AOD9
Wendal Chen 2 anos atrás
pai
commit
a7a2780edd

+ 24 - 3
cloudbuild/esp32c3-idf5.meta.json

@@ -623,10 +623,31 @@
                   "dft": false
                },
                {
-                  "name": "lvgl",
-                  "content": "轻量级图形化库",
-                  "rsize": 289024,
+                  "name": "@lvgl",
+                  "content": "轻量级图形化库,依赖lcd库. 虽然支持但SPI慢,效果不好",
+                  "rsize": 1024,
                   "children": [
+                     {
+                        "name": "lvgl",
+                        "content": "基础功能",
+                        "rsize": 260536,
+                        "fsize": 631888,
+                        "dft": false
+                     },
+                     {
+                        "name": "lvgl_jpg",
+                        "content": "JPG解码功能",
+                        "rsize": 260536,
+                        "fsize": 631888,
+                        "dft": false
+                     },
+                     {
+                        "name": "lvgl_png",
+                        "content": "PNG解码功能",
+                        "rsize": 260536,
+                        "fsize": 631888,
+                        "dft": false
+                     },
                      {
                         "name": "lvgl_anim",
                         "content": "自定义动画",

+ 25 - 4
cloudbuild/esp32s3-idf5.meta.json

@@ -579,10 +579,31 @@
                  "dft":false
               },
               {
-                 "name":"lvgl",
-                 "content":"轻量级图形化库",
-                 "rsize":289024,
-                 "children":[
+               "name": "@lvgl",
+               "content": "轻量级图形化库,依赖lcd库. 虽然支持但SPI慢,效果不好",
+               "rsize": 1024,
+               "children": [
+                  {
+                     "name": "lvgl",
+                     "content": "基础功能",
+                     "rsize": 260536,
+                     "fsize": 631888,
+                     "dft": false
+                  },
+                  {
+                     "name": "lvgl_jpg",
+                     "content": "JPG解码功能",
+                     "rsize": 260536,
+                     "fsize": 631888,
+                     "dft": false
+                  },
+                  {
+                     "name": "lvgl_png",
+                     "content": "PNG解码功能",
+                     "rsize": 260536,
+                     "fsize": 631888,
+                     "dft": false
+                  },
                   {
                      "name":"lvgl_anim",
                      "content":"自定义动画",

+ 8 - 2
luatos/components/luat/port/luat_fs_idf5.c

@@ -361,9 +361,15 @@ const struct luat_vfs_filesystem vfs_fs_spiffs = {
 #include "lv_sjpg.h"
 static void lvgl_fs_codec_init(void) {
 	luat_lv_fs_init();
-	// lv_bmp_init();
-	// lv_png_init();
+    #ifdef LUAT_USE_LVGL_BMP
+	lv_bmp_init();
+    #endif
+    #ifdef LUAT_USE_LVGL_PNG
+	lv_png_init();
+    #endif
+    #ifdef LUAT_USE_LVGL_JPG
 	lv_split_jpeg_init();
+    #endif
 }
 
 #endif

+ 4 - 0
luatos/include/luat_conf_bsp.h

@@ -132,6 +132,10 @@
 // 主推的UI库, 功能强大但API繁琐
 #define LUAT_USE_LVGL
 
+#define LUAT_USE_LVGL_JPG 1 // 启用JPG解码支持
+// #define LUAT_USE_LVGL_PNG 1 // 启用PNG解码支持
+// #define LUAT_USE_LVGL_BMP 1 // 启用BMP解码支持
+
 #define LUAT_USE_LVGL_INDEV 1 // 输入设备
 
 #define LUAT_USE_LVGL_ARC   //圆弧 无依赖