文章目录
一、Canvas#saveLayer() 新建图层
二、Canvas 状态栈保存信息标志位
Canvas 状态保存机制 中 , 存在两个栈结构 , 分别是 状态栈 和 图层栈 ;
其中 图层栈..., 不会干扰其他图层的绘制 ;
Canvas#saveLayer() 函数 相当于创建了一个透明图层 , 之后的绘图操作 , 都在透明图层中执行的 ;
Layer 图层 其在底层也是 由 状态栈 进行保存的...Canvas#saveLayer() 函数的 int 类型返回值 , 即可使 状态栈 出栈到 该图层对应的 元素 , 即该元素置为栈顶位置 ;
状态栈 中 , 保存的不只是坐标系信息 , 还包括 矩阵信息...----
Canvas#saveLayer() 函数 , 还有一个 3 个参数的多态方法 , 第三个参数就是 状态栈 保存形式 状态位 ;
MATRIX_SAVE_FLAG 状态位 : 只保存 图层...状态位 : 保存完整的颜色信息 ;
ALL_SAVE_FLAG 状态位 : 保存所有信息 ;
Canvas 中有如下默认注解 , 该标志位默认为 ALL_SAVE_FLAG , 一般情况下都设置保存所有信息