HTML5技术

canvas 平移缩放 - LI小白

字号+ 作者:H5之家 来源:H5之家 2016-10-26 14:00 我要评论( )

1.平移 canvas其实只是一个包装器,真正起着重要作用的部分是2D渲染上下文,这才是我们真正绘制图形的地方。 然而2D渲染上下文是一种基于屏幕的标准绘制平台。它采用屏幕的笛卡尔坐标系统,以左上角(0,0)坐标为原点。 向右移动时x的坐标值增加,向下移动时

1.平移
canvas其实只是一个包装器,真正起着重要作用的部分是2D渲染上下文,这才是我们真正绘制图形的地方。
然而2D渲染上下文是一种基于屏幕的标准绘制平台。它采用屏幕的笛卡尔坐标系统,以左上角(0,0)坐标为原点。
向右移动时x的坐标值增加,向下移动时y的坐标值增加。
好了了解了坐标系统之后,咱们就可以尽情的移动处理图形的位置了!
平移,也就是参照2D渲染上下文的原点(0,0),将图形从一个坐标点移动到另一个坐标点的过程!
使用方法:translate(x,y) 两个参数分别以原点为坐标 向左增加x个单位值,向下增加y个单位值。

变形 window.onload = function () { ); ); context.fillRect(); context.translate(; context.fillRect( context.fillStyle ; context.translate(); } 您的浏览器暂不支持画布!

由此不难看出,canvas的绘图状态一旦设置,就会影响之后所有元素的绘制属性!
这是由于它们都是在2D渲染上下文中操作的,而不是只针对所绘制的图形。

 

2.缩放
使用方法:scale(x,y);
调整元素在2D上下文中的尺寸,与平移的区别在于(x,y)参数是缩放倍数,而不是像素值。
单独使用该方法,会让之后所有元素都跟着放大相应的倍数,这肯定不是你所想要的!
因此我们可以在缩放前,先调用save()方法,保存一下绘图状态,等当前元素执行了缩放之后,
我们再调用一下restore()方法,这样就可以恢复到之前的绘图状态了,从而实现只对当前元素进行缩放的操作!

变形 window.onload = function () { ); context.save(); ); context.restore(); } 您的浏览器暂不支持画布!

 

 

交流群:225443677

 

1.本站遵循行业规范,任何转载的稿件都会明确标注作者和来源;2.本站的原创文章,请转载时务必注明文章作者和来源,不尊重原创的行为我们将追究责任;3.作者投稿可能会经我们编辑修改或补充。

相关文章
  • canvas 保存状态 - LI小白

    canvas 保存状态 - LI小白

    2016-10-26 11:00

  • canvas 基础 - LI小白

    canvas 基础 - LI小白

    2016-10-25 18:00

  • 开源造轮子:一个简洁,高效,轻量级,酷炫的不要不要的canvas粒子运动插件库 - Barrior

    开源造轮子:一个简洁,高效,轻量级,酷炫的不要不要的canvas粒子运

    2016-10-19 10:00

  • canvas实现刮刮乐 - zhengqiu

    canvas实现刮刮乐 - zhengqiu

    2016-10-16 11:00

网友点评
s