• linkedu视频
  • 平面设计
  • 电脑入门
  • 操作系统
  • 办公应用
  • 电脑硬件
  • 动画设计
  • 3D设计
  • 网页设计
  • CAD设计
  • 影音处理
  • 数据库
  • 程序设计
  • 认证考试
  • 信息管理
  • 信息安全
菜单
linkedu.com专业计算机教程网站
  • 网页制作
  • 数据库
  • 程序设计
  • 操作系统
  • CMS教程
  • 游戏攻略
  • 脚本语言
  • 平面设计
  • 软件教程
  • 网络安全
  • 电脑知识
  • 服务器
  • 视频教程
  • html/xhtml
  • html5
  • CSS
  • XML/XSLT
  • Dreamweaver教程
  • Frontpage教程
  • 心得技巧
  • bootstrap
  • vue
  • AngularJS
  • HBuilder教程
  • css3
  • 浏览器兼容
  • div/css
  • 网页编辑器
  • axure
您的位置:首页 > 网页设计 >html5 > 详解通过HTML5 Canvas实现图片的平移及旋转变化的方法_html5教程技巧

详解通过HTML5 Canvas实现图片的平移及旋转变化的方法_html5教程技巧

作者:匿名 字体:[增加 减小] 来源:互联网 时间:2018-12-03

本文主要包含HTML5,Canvas,平移,旋转等相关知识,匿名希望在学习及工作中可以帮助到您
平移变换translate()
平移变换,故名思议,就是一般的图形位移。比如这里我想将位于(100,100)的矩形平移至(200,200)点。那么我只要在绘制矩形之前加上context.translate(100,100)即可。

这里的translate()只传入两个参数,其实就是新画布坐标系原点的坐标。下面结合代码来看看效果。

  1. >
  2. <html lang="zh">
  3. <head>
  4. <meta charset="UTF-8">
  5. <title>平移变换title>
  6. <style>
  7. body { background: url("./images/bg3.jpg") repeat; }
  8. #canvas { border: 1px solid #aaaaaa; display: block; margin: 50px auto; }
  9. style>
  10. head>
  11. <body>
  12. <div id="canvas-warp">
  13. <canvas id="canvas">
  14. 你的浏览器居然不支持Canvas?!赶快换一个吧!!
  15. canvas>
  16. div>
  17. <script>
  18. window.onload = function(){
  19. var canvas = document.getElementById("canvas");
  20. canvas.width = 800;
  21. canvas.height = 600;
  22. var context = canvas.getContext("2d");
  23. context.fillStyle = "#FFF";
  24. context.fillRect(0,0,800,600);
  25. context.fillStyle = "#00AAAA";
  26. context.fillRect(100,100,200,100);
  27. context.fillStyle = "red";
  28. context.translate(100,100);
  29. context.fillRect(100,100,200,100);
  30. };
  31. script>
  32. body>
  33. html>

运行结果:
2016322112903186.jpg (850×500)

这里的蓝色矩形,是矩形原来的位置,然后调用translate()方法,将矩形位移至(200,200),即红色矩形的位置。我们来用一张图看看,它是怎么做到平移变换的。
2016322112934958.jpg (850×500)

没错,其实这里的平移变换实质就是在平移坐标系,而对translate()传入的参数,实质就是新坐标系相对于旧坐标系的原点。这使得我们依旧是在(100,100)绘制的红色矩形,在平移坐标系之后,变到了(200,200)处。

注意使用状态保存:
其实这里有一个坑,我们如果想把矩形平移至(300,300)怎么办呢?或许我们会想,直接调用context.translate(200,200)就可以了。好,我们看看效果。

  1. "zh">
  2. "UTF-8">
  3. 平移变换
  4. "canvas">
  5. 你的浏览器居然不支持Canvas?!赶快换一个吧!!

您可能想查找下面的文章:

  • HTML5知识点总结
  • HTML5的本地存储
  • HTML5本地存储之IndexedDB
  • Html5实现文件异步上传功能
  • Html5新标签datalist实现输入框与后台数据库数据的动态匹配
  • 详解HTML5 window.postMessage与跨域
  • HTML5拖放API实现拖放排序的实例代码
  • 解决html5中video标签无法播放mp4问题的办法
  • HTML5新特性 多线程(Worker SharedWorker)
  • Html5新增标签有哪些

相关文章

  • 2018-12-03一些常用的HTML5模式(pattern) 总结_html5教程技巧
  • 2018-12-03关于html5 canvas 微信海报的分享介绍
  • 2018-12-03有关页面访问速度的文章推荐10篇
  • 2017-08-06HTML5中的nav标签学习笔记
  • 2017-08-06HTML5是什么 HTML5是什么意思 HTML5简介
  • 2018-12-03知乎前端都用了哪些优化方法?
  • 2017-08-06Html5新标签datalist实现输入框与后台数据库数据的动态匹配
  • 2018-12-03html5 Canvas画图教程(7)—canvas里画曲线之quadraticCurveTo方法_html5教程技巧
  • 2017-08-06整理的15个非常有用的 HTML5 开发教程和速查手册
  • 2018-12-03处理HTML5新标签的浏览器兼容版问题

文章分类

  • html/xhtml
  • html5
  • CSS
  • XML/XSLT
  • Dreamweaver教程
  • Frontpage教程
  • 心得技巧
  • bootstrap
  • vue
  • AngularJS
  • HBuilder教程
  • css3
  • 浏览器兼容
  • div/css
  • 网页编辑器
  • axure

最近更新的内容

    • HTML5地理定位实例
    • 自己写HTML用Cordova打包与用AppCan、Dcloud、WeX5、ApiCloud有何区别?
    • HTML5编程实战之二-使用动画的形式切换图片代码案例
    • html5 postMessage解决跨域、跨窗口消息传递方案
    • H5中如何获取和设置自定义属性
    • 有关HTML5 Video对象的ontimeupdate事件(Chrome上无效)的问题
    • HTML5实战与剖析之WebSockets简介
    • html5七大优势“逼宫”APP
    • 在 Google 搜索 Let it snow 的效果是怎么实现的?
    • 学习html5需要什么基础?小白能学会吗

关于我们 - 联系我们 - 免责声明 - 网站地图

©2020-2025 All Rights Reserved. linkedu.com 版权所有