translate()方法

在canvas中,可以使用translate()方法来平移图形。所谓的平移,是指图形沿着x轴或y轴进行直线运动。平移不会改变图形的形状和大小。

语法:

 cxt.translate(x,y);

说明:

x表示图形在x方向上移动的距离,默认单位是px。当x为正时,图形向x轴正方向移动;当x为负时,图形向x轴反方向移动。

y表示图形在y方向上移动的距离,默认单位是px。当y为正时,图形向y轴正方向移动;当y为负时,图形向y轴反方向移动。

注意:canvas使用的坐标系为W3C坐标系(y轴正方向向下),而不是数学坐标系(y轴正方向向上)。

看下面一段代码:

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8" />
    <title>translate()方法</title>
    <script>
        function $(id){
            return document.getElementById(id);
        }
        window.οnlοad=function(){
            var cv=$('canvas');
            var cxt=cv.getContext('2d');

            //绘制矩形
            cxt.fillStyle='skyblue';
            cxt.fillRect(30,30,50,50);
            //移动矩形
            cxt.translate(50,50);
            cxt.fillRect(30,30,50,50); //重绘,这里仍然是fillRect(30,30,50,50)
        };
    </script>
</head>
<body>
    <canvas id="canvas" width='200' height='150' style='border:1px solid grey;'></canvas>
</body>
</html>

在浏览器中的预览效果图如下:


  • 0
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值