MTK开发下常用到图层。图层使用基本步骤如下:
1、创建图层:
gdi_layer_create(OFFSET_X,OFFSET_Y,WIDTH,HEIGHT,HANDLE_PTR);
HANDLE_PTR:图层句柄,可以理解为指向图层的索引。
2、激活图层:
gdi_layer_active(HANDLE_PTR);
3、合并:
gdi_layer_set_blt_layer(layer1,layer2...)
合并多个图层,之后统一使用gui_BLT_double_buffer()刷新。至于为什么这么做有很多资料,就不详细解释了。
可选步骤:
*图层通透效果: gdi_layer_set_source_key(TRUE,COLOR),效果:背景色在基础层上消失。
*剪切 gdi_layer_set_clip(sx,sy,ex,ey);剪切起作用的部分。
gdi_layer_reset_clip();
*透明效果:
gdi_layer_set_opacity(TRUE,100);第二个参数为透明值。
4、释放图层
gdi_layer_free();
附注:
多个层之间的操作可以通过锁层来控制:
gdi_layer_lock_frame_buffer();
gdi_layer_lock_frame_buffer();
此两个函数必须成对出现,只能被最后加锁的层可操作。