您当前的位置: 首页 >  ar

仙剑情缘

暂无认证

  • 0浏览

    0关注

    333博文

    0收益

  • 0浏览

    0点赞

    0打赏

    0留言

私信
关注
热门博文

transparent canvas with chroma keying for little vGL

仙剑情缘 发布时间:2020-02-18 15:12:46 ,浏览量:0

  • 定义画布尺寸
    #define TRANSPARENT_CANVAS_WIDTH    50
    #define TRANSPARENT_CANVAS_HIGHT    50
  • 创建一个button
    lv_btn_create(lv_scr_act(), NULL);
  • 定义画布缓冲buffer,注意不能是局部的
    static lv_color_t cbuf[LV_CANVAS_BUF_SIZE_INDEXED_1BIT(TRANSPARENT_CANVAS_WIDTH,
        TRANSPARENT_CANVAS_HIGHT)];
  • 创建画布对象
     lv_obj_t* canvas = lv_canvas_create(lv_scr_act(), NULL);
  • 设置关联画布缓冲buffer
     lv_canvas_set_buffer(canvas, cbuf, TRANSPARENT_CANVAS_WIDTH, TRANSPARENT_CANVAS_HIGHT, LV_IMG_CF_INDEXED_1BIT);
       
  •    设置透明和红色2个调色盘
        lv_canvas_set_palette(canvas, 0, LV_COLOR_TRANSP);
        lv_canvas_set_palette(canvas, 1, LV_COLOR_RED);
  • 定义颜色变量C0,C1
        lv_color_t c0;
        lv_color_t c1;
        c0.full = 0;
        c1.full = 1;
    
  • 绘制C0,C1
    lv_canvas_fill_bg(canvas, c1);
    uint32_t x, y;
    for (y = 10; y < 30; y++)
    {
        for (x = 5; x < 20; x++)
        {
            lv_canvas_set_px(canvas, x, y, c0);
        }
    }
  • 完整的实现
#define TRANSPARENT_CANVAS_WIDTH    50
#define TRANSPARENT_CANVAS_HIGHT    50
void transparent_canvas_demo(void) {
    lv_btn_create(lv_scr_act(), NULL);
    static lv_color_t cbuf[LV_CANVAS_BUF_SIZE_INDEXED_1BIT(TRANSPARENT_CANVAS_WIDTH,
    TRANSPARENT_CANVAS_HIGHT)];

    lv_obj_t* canvas = lv_canvas_create(lv_scr_act(), NULL);
    lv_canvas_set_buffer(canvas, cbuf, TRANSPARENT_CANVAS_WIDTH, TRANSPARENT_CANVAS_HIGHT, LV_IMG_CF_INDEXED_1BIT);
    lv_canvas_set_palette(canvas, 0, LV_COLOR_TRANSP);
    lv_canvas_set_palette(canvas, 1, LV_COLOR_RED);
    lv_color_t c0;
    lv_color_t c1;
    c0.full = 0;
    c1.full = 1;

    lv_canvas_fill_bg(canvas, c1);
    uint32_t x, y;
    for (y = 10; y < 30; y++) {
        for (x = 5; x < 20; x++) {
            lv_canvas_set_px(canvas, x, y, c0);
        }
    }
}
  • 调用transparent_canvas_demo函数,编译运行

 

关注
打赏
1658017818
查看更多评论
立即登录/注册

微信扫码登录

0.0434s