canvas变换

  1. 方法

    save()                  保存canvas状态
    restore() 回复canvas保存的状态
    translate(x, y) 移动canvas位置
    rotate(radians) 顺时针方向旋转canvas,弧度 = (Math.PI/180)*角度)
    scale(x, y) 缩放坐标轴,如果是负数则坐标轴反向
  2. 移动画布

    const canvas = document.getElementById('canvas');
    const ctx = canvas.getContext('2d'); ctx.save();
    ctx.fillStyle='orange';
    ctx.translate(10, 10);
    ctx.fillRect(0,0, 10, 10)
    ctx.restore(); ctx.save();
    ctx.fillStyle='red';
    ctx.translate(20, 20);
    ctx.fillRect(0,0, 10, 10);
    ctx.restore(); ctx.save();
    ctx.fillStyle='blue';
    ctx.translate(30, 30);
    ctx.fillRect(0,0, 10, 10);
    ctx.restore(); ctx.save();
    ctx.fillStyle='green';
    ctx.translate(40, 40);
    ctx.fillRect(0,0, 10, 10);
  3. 旋转画布

    ctx.fillStyle='orange';
    ctx.translate(200, 200); for(var i = 1; i <= 18; i++){
    ctx.rotate((Math.PI / 180) * 20 * i);
    ctx.fillRect(0, 0, 100, 100);
    }
  4. 缩放坐标轴

    ctx.fillStyle='orange';
    ctx.font = '30px serif';
    ctx.translate(200, 100);
    ctx.scale(-1, 1);
    ctx.fillText('Hello world', 10, 50);

canvas变换的更多相关文章

  1. 【转】android Graphics(四):canvas变换与操作

    android Graphics(四):canvas变换与操作 分类: 5.andriod开发2014-09-05 15:05 5877人阅读 评论(18) 收藏 举报   目录(?)[+]   前言 ...

  2. android Graphics(四):canvas变换与操作

    前言:前几篇讲解了有关canvas绘图的一些操作,今天更深入一些,讲讲对画布的操作,这篇文章不像前几篇那么容易理解,如果以前没有接触过画布的童鞋可能比较难以理解,为什么会这样.我尽量多画图,让大家更清 ...

  3. canvas变换(移动,缩放等)

    代码: 1 /** 2 * Created by Administrator on 2016/1/30. 3 */ 4 function draw (id){ 5 var canvas = docum ...

  4. 自定义控件之canvas变换和裁剪

    1.平移 //构造两个画笔,一个红色,一个绿色 Paint paint_green = generatePaint(Color.GREEN, Paint.Style.STROKE, 3); Paint ...

  5. 自定义控件之绘图篇(四):canvas变换与操作

    具体操作见下面链接: http://blog.csdn.net/harvic880925/article/details/39080931/

  6. 小程序canvas 变换

    var ctx = wx.createCanvasContext('base'); var centerX = 375/ 2; var centerY = 200; var rotate = 90; ...

  7. HTML5 程序设计 - 使用HTML5 Canvas API

    请你跟着本篇示例代码实现每个示例,30分钟后,你会高喊:“HTML5 Canvas?!在哥面前,那都不是事儿!” 呵呵.不要被滚动条吓到,很多都是代码和图片.我没有分开写,不过上面给大家提供了目录,方 ...

  8. 讲解Canvas中的一些重要方法

    Canvas所提供的各种方法根据功能来看大致可以分为几类: 第一是以drawXXX为主的绘制方法: 第二是以clipXXX为主的裁剪方法: 第三是以scale.skew.translate和rotat ...

  9. html5 Canvas API

    详细内容请点击 1.HTML Canvas API有两方面优势可以弥补:首先,不需要将所绘制图像中的每个图元当做对象存储,因此执行性能非常好:其次,在其他编程语言现有的优秀二维绘图API的基础上实现C ...

随机推荐

  1. taglist-plus 安装使用

    taglist 可以查看文件中的 类,函数,变量等信息. 在.vimrc中添加: Plugin 'taglist-plus' 然后打开vim编辑器 PluginInstall 使用: 打开taglis ...

  2. vnc viewer 点击system 卡死现象

    转自:http://zhangjunli177.blog.163.com/blog/static/1386073082012103052527557/ VNC viewer desktop dead ...

  3. angular常用的服务

    在 AngularJS 中,服务是一个函数或对象,可在你的 AngularJS 应用中使用. AngularJS 内建了30 多个服务. $window$routeProvider 1. $http服 ...

  4. linux yum安装lsof命令

    [root@ITC-MCC ~]# yum install lsof[USM] permission denied^C[root@ITC-MCC ~]# [root@ITC-MCC ~]# [root ...

  5. HDU-4550-贪心

    卡片游戏 Time Limit: 3000/1000 MS (Java/Others)    Memory Limit: 65535/32768 K (Java/Others)Total Submis ...

  6. 改变VO中的sql

    cuxOptionVO.setFullSqlMode(cuxOptionVO.FULLSQL_MODE_AUGMENTATION); cuxOptionVO.setQuery(null); cuxOp ...

  7. MissingNumber缺失的数字,FirstMissingPositive第一个缺失的正数

    MissingNumber问题描述:给定一个数组,数组数字范围是0-n,找到缺失的数字.例如nums={0,1,3},return2. 算法分析:第一种方法,对数组进行排序,然后找到和下标不一致的数字 ...

  8. Java中常用的日期操作方法

    日常项目当中经常会用到操作日期,抽出时间总结了一下,欢迎和大家多多沟通学习,如有任何改进意见和建议,我的QQ是1243672,欢迎联系哦. /** * 日期操作类 * 开发公司:北京东达悦科技有限公司 ...

  9. Portability Flaw Locale Dependent Comparison

    Portability Flaw Locale Dependent Comparison [问题描述] 该问题涉及String的toUpperCase()方法.具体通过例子演示相关现象. public ...

  10. 20155202 2016-2017-2 《Java程序设计》第8周学习总结

    20155202 2016-2017-2 <Java程序设计>第8周学习总结 教材学习内容总结 有Java.util.logging包提供了日志功能相关类与接口,使用日志起点是logger ...