5-Canvas

Canvas.save会将一个Matrix矩阵保存到一个栈中,当调用Canvas.restore时,会将栈顶的Matrix出栈,并将其应用到当前Canvas,Matrix是一个3*3的矩阵,他里面有9个参数,

cosX -sinX translateX
sinX cosX translateY
0 0 scale

其中,sinX和cosX,代表的是旋转角度的sin和cos值。注意旋转的正方向是顺时针方向。translateX和translateY代表的是平移的X和Y。scale代表的是缩放的大小。

Canvas.saveLayer主要是用来新建一个图层,后续的绘图操作都在新建的Layer上面进行,当我们调用restore或restoreToCount时,会将对应图层的绘制内容应用到Canvas画布上

区别:Canvas.save只保存了变幻信息,例如平移、缩放、封装等,而Canvas.saveLayer除了保存这些外,还保存了图像信息

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值