zoukankan      html  css  js  c++  java
  • canvas

    先创建canvas标签

    <canvas id="myCanvas" width="800" height="500" style="background:#eee">
    Your browser does not support HTML5 Canvas.
    </canvas>

    然后写js代码。可放在<script></script>标签里边,也可以放在外部js文件里边。

      首先获取canvas:

        var myCanvas = document.getElementById('myCanvas');

        var ctx = myCanvas.getContext('2d');

      //可用一句代码表示:var ctx = document.getElementById('myCanvas').getContext('2d');

      然后就可以进行各种操作了

        基础方法:

          1.ctx.fillStyle = '颜色';  //设置或返回用于填充绘画的颜色、渐变或模式

          2.ctx.strokeStyle = '';  //设置或返回用于笔触的颜色、渐变或模式

          3.ctx.shadowStyle = '';  //设置或返回用于阴影的颜色

          4.ctx.shadowBlur = '';  //设置或返回用于阴影的模糊级别

          5.ctx.shadowOffsetX = '';  //设置或返回阴影距形状的水平距离

          6.ctx.shadowOffsetY = '';  //设置或返回阴影距形状的垂直距离

        1.画线

          ctx.beginPath(0,0);  //起点 (x,y)  以(0,0)点为原点,x为x轴,y为y轴。

          ctx.moveTo(0,0);  //把路径移动到画布中的指定点,不创建线条。

          ctx.lineTo(100,100);  //终点 

          ctx.lineTo(300,400);  //连续画线,以上一个终点为起点

        2.画矩形

          ctx.fillRect(x,y,width,height);  //此方法画出来的是填充的矩形,默认颜色为#000,要是想要改变填充颜色,则需要将ctx.fillStyle = '颜色';放到其前面

          ctx.strokeRect(x,y,width,height);  ///此方法画出来的是非填充的矩形,默认颜色为#000,要是想要改变填充颜色,则需要将ctx.fillStyle = '颜色';放到其前面      

        3.画圆

           ctx.arc(x,y,r,起始角度,结束角度);  //此方法画空心圆

        4.渐变      

          //创建渐变
          var grd=ctx.createLinearGradient(0,20,200,30);
          grd.addColorStop(0,"red");
          grd.addColorStop(1,"white");

          //填充渐变
          ctx.fillStyle=grd;
          ctx.fillRect(20,400,150,80);

          //创建渐变
          var grd=ctx.createRadialGradient(550,250,5,550,250,150);
          grd.addColorStop(0,"red");
          grd.addColorStop(1,"#ffffaa");

          //填充渐变
          ctx.fillStyle=grd;
          ctx.fillRect(400,100,300,300);

  • 相关阅读:
    Awesome Ubuntu中文
    OpenCV 2.4.0 + IPP + TBB, checked
    (MSys+MinGW )FFmpeg工程编译 FFplay Gary's Blog A C++ programmer 博客频道 CSDN.NET
    OpenCV installation for Ubuntu 12.04 | Raben Systems, Inc.
    安装Ubuntu 12.04后没有休眠(hibernate)选项
    Entity Framework 4.1
    三行代码实现阿拉伯数字转中文大小写<转>
    DataGridViewCell赋值
    数据库事务嵌套用法
    WCF传递DataTable时需要填写表名
  • 原文地址:https://www.cnblogs.com/shenhf/p/6955799.html
Copyright © 2011-2022 走看看