对canvas的translate()方法的理解
2016-09-20 16:36 一切尽在掌握 阅读(3248) 评论(0) 编辑 收藏 举报转自:http://blog.csdn.net/fulianwu/article/details/7001618
- canvas.save();//锁画布(为了保存之前的画布状态)
- canvas.translate(10, 10);//把当前画布的原点移到(10,10),后面的操作都以(10,10)作为参照点,默认原点为(0,0)
- drawScene(canvas);
- canvas.restore();//把当前画布返回(调整)到上一个save()状态之前
- canvas.save();//锁画布(为了保存之前的画布状态)
- canvas.translate(160, 10);//把当前画布的原点移到(160,10),后面的操作都以(160,10)作为参照点,
- canvas.clipRect(10, 10, 90, 90);//这里的真实坐标为左上(170,20)、右下(250,100)
- canvas.clipRect(30, 30, 70, 70, Region.Op.DIFFERENCE);
- drawScene(canvas);
- canvas.restore();
- canvas.save();//锁画布(为了保存之前的画布状态)
- canvas.translate(10, 10);//把当前画布的原点移到(10,10),后面的操作都以(10,10)作为参照点,默认原点为(0,0)
- drawScene(canvas);
- canvas.restore();//把当前画布返回(调整)到上一个save()状态之前
- canvas.save();//锁画布(为了保存之前的画布状态)
- canvas.translate(160, 10);//把当前画布的原点移到(160,10),后面的操作都以(160,10)作为参照点,
- canvas.clipRect(10, 10, 90, 90);//这里的真实坐标为左上(170,170)、右下(250,250)
- canvas.clipRect(30, 30, 70, 70, Region.Op.DIFFERENCE);
- drawScene(canvas);
- canvas.restore();