在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>

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

translate()方法相关推荐

  1. 在LINQ to SQL中使用Translate方法以及修改查询用SQL

    目前LINQ to SQL的资料不多--老赵的意思是,目前能找到的资料都难以摆脱"官方用法"的"阴影".LINQ to SQL最权威的资料自然是MSDN,但是M ...

  2. 《Python CookBook2》 第一章 文本 - 检查字符串中是否包含某字符集合中的字符 简化字符串的translate方法的使用...

    检查字符串中是否包含某字符集合中的字符  任务: 检查字符串中是否出现了某个字符集合中的字符 解决方案: 方案一: import itertoolsdef containAny(seq,aset):f ...

  3. CSS3中使用translate() 方法实现元素位置的移动

    translate() 方法 通过 translate() 方法,元素从其当前位置移动,根据给定的 left(x 坐标) 和 top(y 坐标) 位置参数: 实例 div { transform: t ...

  4. [css] 请描述下你对translate()方法的理解

    [css] 请描述下你对translate()方法的理解 Single length/percentage value一个长度值或百分比表示X轴和Y轴使用一样的值进行二维上的平移.等同于transla ...

  5. python中的translate_Python translate()方法

    描述 Python translate() 方法根据 maketrans() 方法给出的字符映射转换表转换字符串中的字符. 语法 translate() 方法语法: Python3中: S.trans ...

  6. transform:translate()方法坐标详解

    定义:translate()方法,根据左(X轴)和顶部(Y轴)位置给定的参数,从当前元素位置移动. 但是如何移动呢?于是做了以下实验: 实验1.设置transform:translate(0px,0p ...

  7. 关于maketrans方法和translate方法一起使用的说明(从字符串中删除某些字符,请区别于replace)

    str.marktrans方法:生成一个dict表.对应翻译表(asc码格式), 如:t = str.maketrans('abcdefghi', '123456789',"abfgjk&q ...

  8. Python中maketrans和translate方法

    Python字符串maketrans()方法返回一个转换表,它将含有制表符的字符串intabstring中的每个字符映射到outtab字符串中相同位置的字符.然后将此表传递给translate()函数 ...

  9. Android 对Canvas的translate方法总结

    方法translate(x,y): 平移,将画布的坐标原点向左右方向移动x,向上下方向移动y.canvas的默认位置是在(0,0).   例子:画布原点假如落在(1,1),那么translate(10 ...

  10. python发音翻译-Python translate()方法

    先按照转换表的替换出新的 string,然后再执行 del 参数的替换,有个先后顺序: # -*- coding:utf-8 -*- from string import maketrans inta ...

最新文章

  1. request.getParameterMap()的坑
  2. java 协程线程的区别_为什么 Java 坚持多线程不选择协程?
  3. 新媒体技术发展迅猛 手机将让生活产生巨变(转)
  4. TokenInsight:反映区块链行业整体表现的TI指数较昨日同期上涨6.21%
  5. 为什么我们要升级到 iOS 12.1.3?
  6. 如何在Ubuntu Linux上安装JDK
  7. rapidxml往xml文件循环写入内容
  8. windows通过cmd命令行下载FTP中文件的几种方式
  9. 迷你世界勒索病毒,你的文件被删了吗?
  10. 元宇宙如何改变人类社会生活。
  11. android ios 对比 组件_Android和iOS的区别(从开发角度比较)
  12. 微信服务器下载图片到服务器格式损坏问题解决
  13. 读李尚龙《你只是看起来很努力》摘录的句子
  14. 应用计算机解数学模型之我见,初中数学建模教学之我见
  15. 使用print时出错 SyntaxError: Missing parentheses in call to ‘print‘ Did you mean print(““)
  16. 读书笔记-effective STL
  17. 电脑故障排除方法(风扇转一下,马上就停,主板没有其它任何响应)
  18. CSS实现页脚始终在页面底部
  19. (转)使用Excel批量给数据添加单引号和逗号
  20. android换肤的实现方案,Android应用开发之Android一键换肤功能实现

热门文章

  1. 【PyQt5】教你一招,用timer计时器做个打地鼠的小游戏
  2. 写给独自站在人生面前的自己1-java加密算法
  3. 万条票房数据看2019春节档各地影院表现
  4. 私活利器:Java企业级快速开发框架——若依 前后端分离版本编译
  5. 2794: [Poi2012]Cloakroom
  6. Exchange 2019反垃圾邮件组件启用反垃圾邮件功能、设置白名单\黑名单
  7. 【原创】小时候特别喜欢玩的强手棋游戏
  8. TPM设备管理学习心得
  9. 让zheng支持activiti工作流
  10. 16年,平凡而又收获的一年