zoukankan      html  css  js  c++  java
  • HTML5画布(圆形)

    案例1:

    <!DOCTYPE html>
    <html>
    <head lang="en">
    <meta charset="UTF-8">
    <title></title>
    <script>
    function draw(){
    var c=document.getElementById("myCanvas");
    var cxt= c.getContext("2d");
    cxt.fillStyle="#ff0000";
    cxt.beginPath();
    cxt.arc(70,18,15,0,Math.PI*2,true);
    cxt.closePath();
    cxt.fill();
    }
    </script>
    </head>
    <body onload="draw()">
    <canvas id="myCanvas" width="200" height="100" style="border: 1px solid #c3c3c3;">您的浏览器不支持</canvas>

    </body>
    </html>

    效果图:

    注释:

    (1)开始创建路径:

             cxt.beginPath();

    (2)创建圆形路径:

             cxt.arc( x , y , radius , startAngle , endAngle , anticlockwise )

             x为绘制圆形的起点横坐标;y为绘制圆形的起点纵坐标;radius为圆形半径;startAngle为开始角度;endAngle为结束角度,

             anticlockwise为是否按顺时针方向进行绘制,true为顺时针,false为逆时针方向绘制。

             arc方法不仅可以绘制圆形,也可以用来绘制圆弧,只需指定开始角度与结束角度,如:Math.PI*1; 

           效果图:

            

    (3)关闭路径:

            cxt.closePath();

    (4)绘制图形:

            cxt.fill();

            绘制图形时,除了可以使用fill方法(填充图形),还可以使用stroke方法(绘制图形边框)。

    案例2:

    <!DOCTYPE html>
    <html>
    <head lang="en">
    <meta charset="UTF-8">
    <title></title>
    <script>
    function draw(){
    var c=document.getElementById("myCanvas");
    var cxt= c.getContext("2d");
    for(var i=0;i<10;i++)
    {
    cxt.beginPath();
    cxt.arc(i*25,i*25,i*10,0,Math.PI*2,true);
    cxt.closePath();
    cxt.fillStyle='rgba(255,0,0,0.25)';
    cxt.fill();
    }
    }
    </script>
    </head>
    <body onload="draw()">
    <canvas id="myCanvas" width="500" height="350" style="border: 1px solid #dddddd">您的浏览器不支持</canvas>

    </body>
    </html>

    效果图:

    如果把上例中开始创建路径语句与关闭路径这一语句删除,会绘制出怎样的图形?

    案例3:

    <!DOCTYPE html>
    <html>
    <head lang="en">
    <meta charset="UTF-8">
    <title></title>
    <script>
    function draw(){
    var c=document.getElementById("myCanvas");
    var cxt= c.getContext("2d");
    for(var i=0;i<10;i++)
    {
    cxt.arc(i*25,i*25,i*10,0,Math.PI*2,true);
    cxt.fillStyle='rgba(255,0,0,0.25)';
    cxt.fill();
    }
    }
    </script>
    </head>
    <body onload="draw()">
    <canvas id="myCanvas" width="500" height="350" style="border: 1px solid #dddddd">您的浏览器不支持</canvas>

    </body>
    </html>
    效果图:

  • 相关阅读:
    底部导航栏
    判断手机是否连接网络
    瀑布流(圆角,卡片效果)
    列表卡片效果
    使用Glide改变图片的圆角
    条形码EAN-13码和EAN-8码的原理
    自定义底部弹窗
    【代码笔记】Java常识性基础补充(一)——赋值运算符、逻辑运算符、三元运算符、Scanner类、键盘输入、Random类、随机数
    【Android】9.0活动的生命周期(二)——实际代码演示
    【Android】8.0活动的生命周期(一)——理论知识、活动的启动方式
  • 原文地址:https://www.cnblogs.com/bingling2015/p/4410433.html
Copyright © 2011-2022 走看看