• 技术文章 >web前端 >H5教程

    如何使用HTML5 canvas绘制一个矩形

    不言不言2020-10-21 09:32:19原创3527

    使用HTML5 canvas绘制一个矩形的方法:首先创建相应的HTML示例文件;然后通过Canvas上下文的rect方法实现绘制一个矩形,代码语句如“canvas.getContext('2d');”。

    使用HTML5 canvas绘制一个矩形,我们需要用到Canvas上下文的rect()方法。接下来我们就来看看具体的代码实现。

    HTML5 canvas

    我们来看一个具体的例子

    代码如下

    <!DOCTYPE html>
    <html>
    <head>
      <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
      <title></title>
      <meta charset="utf-8" />
      <script type="text/javascript">
      function draw() {
        var canvas = document.getElementById('SimpleCanvas');
        if ( ! canvas || ! canvas.getContext ) {
          return false;
        }
        var cx = 360;
        var cy = 400;
        var radius = 36;
        var context = canvas.getContext('2d');
        context.beginPath();
        context.rect(240, 80, 160, 80);
        context.fillStyle = 'peachpuff';
        context.fill();
        context.lineWidth = 2;
        context.strokeStyle = 'coral';
        context.stroke();
      }
      </script>
    </head>
    <body onload="draw()" style="background-color:#D0D0D0;">
      <canvas id="SimpleCanvas" width="640" height="480" style="background-color:#FFFFFF;"></canvas>
      <div>Canvas Demo</div>
    </body>
    </html>

    说明:

    由document.getElementById()方法获取Canves对象,Canves对象通过调用getContext()方法,用于获取画布上下文的过程是与在画布上绘制时共同处理的。

    调用上下文的beginPath()方法来启动路径。用rect()绘制一个矩形。rect的第一个参数和的第二个参数是矩形左上角的X,Y坐标。第三个参数是绘制矩形的宽度,第四个参数是绘制矩形的高度。

    使用fill()方法填充内部并使用stroke方法绘制轮廓线。

    运行结果

    使用Web浏览器执行创建的HTML文件。将显示如下所示的效果。

    HTML5 canvas

    上述示例的矩形填充了内部,下面我们来看看没有内部填充的矩形

    代码如下

    <!DOCTYPE html>
    <html>
    <head>
      <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
      <title></title>
      <meta charset="utf-8" />
      <style type="text/css">
        <!--
        /*背景色和背景图*/
        .canvas{
          background-color:#FFFFFF;
          background-image: url("img/t.jpg");
        }
        -->
      </style>
      <script type="text/javascript">
      function draw() {
        var canvas = document.getElementById('SimpleCanvas');
        if ( ! canvas || ! canvas.getContext ) {
          return false;
        }
        var cx = 360;
        var cy = 400;
        var radius = 36;
        var context = canvas.getContext('2d');
        context.beginPath();
        context.rect(240, 80, 160, 80);
        context.lineWidth = 4;
        context.strokeStyle = 'coral';
        context.stroke();
    }
      </script>
    </head>
    <body onload="draw()" style="background-color:#D0D0D0;">
      <canvas id="SimpleCanvas" width="640" height="480" class="canvas"></canvas>
      <div>Canvas Demo</div>
    </body>
    </html>

    说明:在绘制图像时,如果不调用fill()方法,只执行stroke()方法,就能绘制内部不填充的矩形。

    运行结果

    在浏览器上显示如下效果

    HTML5 canvas

    最后我们来看直接填充内部的矩形绘制

    <!DOCTYPE html>
    <html>
    <head>
      <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
      <title></title>
      <meta charset="utf-8" />
      <script type="text/javascript">
      function draw() {
        var canvas = document.getElementById('SimpleCanvas');
        if ( ! canvas || ! canvas.getContext ) {
          return false;
        }
        var cx = 360;
        var cy = 400;
        var radius = 36;
        var context = canvas.getContext('2d');
        context.beginPath();
        context.rect(260, 120, 220, 120);
        context.fillStyle = 'burlywood';
        context.fill();
    }
      </script>
    </head>
    <body onload="draw()" style="background-color:#D0D0D0;">
      <canvas id="SimpleCanvas" width="640" height="480" style="background-color:#FFFFFF;"></canvas>
      <div>Canvas Demo</div>
    </body>
    </html>

    运行结果如下所示

    微信截图_20181204101409.png

    以上就是如何使用HTML5 canvas绘制一个矩形的详细内容,更多请关注php中文网其它相关文章!

    声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn核实处理。
    专题推荐:HTML5 canvas
    上一篇:如何使用HTML5 canvas绘制文字的轮廓 下一篇:HTML5 canvas如何绘制圆形?(代码实例)
    VIP课程(WEB全栈开发)

    相关文章推荐

    • 【活动】充值PHP中文网VIP即送云服务器• html5 canvas移动浏览器上实现图片压缩上传_html5教程技巧• 使用HTML5 Canvas为图片填充颜色和纹理的教程_html5教程技巧• 利用HTML5 Canvas API绘制矩形的超级攻略_html5教程技巧• HTML5 Canvas基本线条绘制的实例教程_html5教程技巧• HTML5 Canvas入门学习教程_html5教程技巧
    1/1

    PHP中文网