欢迎光临散文网 会员登陆 & 注册

我做了一个Linux下的轻量级lvgl图片转换工具lv_img_conv

2023-08-17 20:56 作者:奥大梨呀  | 我要投稿

    由于目前开发工作全部在Linux下,用lvgl的时候避免不了需要转换一些图片,先前在windows下都是使用大佬做的Lvglimgtool,但我找了好久都没找到linux下的第三方离线版本,而且lvgl官网的在线图片转换网页打开太慢,离线版又需要安装一堆东西, 因此就自己用图片解码库和C++写了一个轻量版lvgl图片转换工具。欢迎使用和指出bug。

项目链接:https://gitee.com/Jumping99/lv_img_conv

    工具的制作原理就是使用图片解码库将图片解码成图像数据,然后根据不同的参数写入对应的文件,c文件或bin文件。对于bmp图片,目前只支持rgb888格式的图片作为输入,用rgb565可能会出错,不过基本上使用的bmp图片都是rgb888格式的,也就没考虑加入对rgb565的bmp图片的支持了。

    工具目前可以完成lvgl中3种常用的TRUE_COLOR图像的转换,也就是TRUE_COLORTRUE_COLOR_ALPHATRUE_COLOR_CHROMA_KEYED。目前只支持命令行的方式,未来可能考虑加入UI。

    输入参数-h可以查看目前支持的参数,以下是目前支持的参数:

支持的参数选项


    在这些参数中,-i参数是必须的,因为需要指定转换的图片,其余均有默认值,可以不指定,有需要的话可以修改,如要转换为bin文件,加入-b参数; 对于png图片需要透明通道则加入--alpha参数,这样生成后的数据就为TRUE_COLOR_ALPHA了。

    总结来说,目前的功能足够大多数情况下的使用了,有一点不足的地方在于,不能通过参数进行批量转换,目前如果要实现批量转换只能自己编写shell脚本多次调用这个工具进行转换,未来有空再实现吧。

    lvgl两大工具已经实现了一个了,下一个准备实现字体的转换lv_font_conv。


我做了一个Linux下的轻量级lvgl图片转换工具lv_img_conv的评论 (共 条)

分享到微博请遵守国家法律