当前位置: 首页 > news >正文

lvgl修改图片大小上限

在lvgl中读取图片文件时,被读取的图片具有上限,也就是2048像素。这会造成两个非预期的结果:

  1. 超过2048像素的部分会被裁去。
  2. 表示图片的结构体lv_img_t中的wh变量值是图片像素被2048求余。例如,当一个图片高为2048像素时,h的值被赋值为1。此时如果使用lv_img_set_offset_y函数修改图片偏移量,lvgl会以1作为图片高度进行偏移量的计算。

解决办法是修改项目目录下的./lvgl/src/draw/lv_img_buf.h文件中的lv_img_header_t结构体。其中的wh成员限制了图片的上限。图片的高宽上限分别为 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像素。

http://www.lryc.cn/news/276725.html

相关文章:

  • 阻止持久性攻击改善网络安全
  • MFC与Qt多个控件响应统一响应消息处理
  • Camunda rest api鉴权
  • 【PostgreSQL】在DBeaver中实现序列、函数、视图、触发器设计
  • PyQt5-小总结
  • vue父组件给子组件传值,子组件不渲染的原因及解决方法
  • 【数据库】MySQL锁
  • mongodb学习篇
  • kubernetes存储类迁移-备份恢复
  • python智能手机芯片
  • 混淆技术概论
  • pytest安装失败,报错Could not find a version that satisfies the requirement pytest
  • 使用 Maven 的 dependencyManagement 管理项目依赖项
  • 三英战吕布web3游戏项目启动全流程
  • TS中的类
  • 玩转硬件之玩改朗逸中控设备
  • 根据MySql的表名,自动生成实体类,模仿ORM框架
  • Mac上安装tensorflow介绍留存
  • 【赠书第16期】码上行动:用ChatGPT学会Python编程
  • LeetCode 每日一题 2024/1/1-2024/1/7
  • 7+单细胞+空转+实验验证,如何根据内容开展相关经验给你启发
  • Verifiable Credentials可验证证书 2023 终极指南
  • R语言【sp】——SpatialPoints():创建类SpatialPoints或SpatialPointsDataFrame的对象
  • 【Verilog】期末复习——简要说明仿真时阻塞赋值和非阻塞赋值的区别。always语句和initial语句的关键区别是什么?能否相互嵌套?
  • 分享一个idea插件MyBatisX的Bug
  • Linux网络
  • Copilot 插件的使用介绍:如何快速上手
  • kubesphere和k8s的使用分享
  • macos m1如何安装指定版本的redis
  • python 多线程 守护线程