先用这个名字吧 2025-02-20 11:41 采纳率: 0%
浏览 11

LVGL背景颜色偏转

LVGL 8.3.4版本中,设置控件背景颜色纯白,但是有偏色,例如设置RGB为 0xFF,0xff,0xff,但是截图发现照片偏绿,使用截图工具查看RGB值为 0xF8,0xFC,0xF8。请教一下:怎样设置纯白背景?或者哪里颜色发生了偏转?

img

img

  • 写回答

4条回答 默认 最新

  • 阿里嘎多学长 2025-02-20 11:41
    关注

    阿里嘎多学长整理AIGC生成,因移动端显示问题导致当前答案未能完全显示,请使用PC端查看更加详细的解答过程

    LVGL背景颜色偏转问题

    你遇到的问题是 LVGL 8.3.4 版本中,设置控件背景颜色为纯白,但是实际截图中出现偏色问题。例如,你设置 RGB 值为 0xFF,0xFF,0xFF,但是实际截图中 RGB 值为 0xF8,0xFC,0xF8。

    这可能是由于 LVGL 库中的颜色转换问题导致的。LVGL 库使用了一个名为 lv_color_t 的结构体来表示颜色,该结构体包含了红、绿、蓝三个颜色通道的值。

    你可以尝试使用 lv_color_t 结构体中的 lv_color_make 函数来创建颜色,例如:

    lv_color_t white = lv_color_make(255, 255, 255);
    

    这将创建一个 RGB 值为 0xFF,0xFF,0xFF 的颜色。

    如果你仍然遇到偏色问题,可以尝试使用 lv_color_t 结构体中的 lv_color_get 函数来获取颜色值,例如:

    lv_color_t color = lv_obj_get_style_bg_color(obj);
    lv_color_t white = lv_color_make(255, 255, 255);
    if (lv_color_get_r(color) != 255 || lv_color_get_g(color) != 255 || lv_color_get_b(color) != 255) {
        // 偏色处理代码
    }
    

    这将获取控件的背景颜色值,并与预期的白色颜色值进行比较。如果颜色值不符,可以执行偏色处理代码。

    希望这些建议能够帮助你解决问题。如果你需要更多帮助,请提供更多的代码和信息。

    评论

报告相同问题?

问题事件

  • 创建了问题 2月20日