8.1 混合模式之 AoidXfermode
- 准备
1.禁用硬件加速
setLayerType(View.LAYER_TYPE_SOFTWARE,null)
2.使用离屏绘制
int layerid = canvas.saveLayer(O, 0, getWidth( ), getHeight(),null,Canvas.ALL_SAVE_FLAG);
canvas.restoreToCount(layerid);
8.1.2 AoidXfermode
public AvoidXfermode(int opColor,int tolerance,Mode node)
opColor:十六进制颜色值
tolerance:容差
mode:Mode.TRGENT(指定颜色替换掉)、Mode.AVOID(想反区域替换掉)
8.4.3 模式总结
- 目标图像和源图像混合,需不需要生成颜色的叠加特效 如果需要 ,则从颜色叠加
相关模式中选择,有 Mode.ADD (饱和度相 )、 Mode.DARKEN (变暗) Mode.LIGHTEN
(变亮)、 Mode.MULTIPLY (正片叠底)、 Mode.OVERLAY (叠加)、 Mode.SCREEN (滤色)。 - 当不需要特效,而需要根据某张图片的透明像素来裁剪时,就需要使用 SRC 相关模式或 DST 关模式了。而 SRC 相关模式与 DST 相关模式是相通的,唯一不同的是决定当前哪个图像是目标图像和源图像。
- 当需要清空图像时,使用 Mode .CLEAR 模式
8.5 自己总结
混合模式之PorterDuffXfermode