美文网首页
Canvas-绘制直线-Day01

Canvas-绘制直线-Day01

作者: 木易先生灬 | 来源:发表于2018-10-15 22:38 被阅读0次
    <style type="text/css">
        #mycanvas{
            background-color: orange;
            /*width: 600px;
            height: 400px;*/
        }
    </style>
    <!--
    Canvas入门
    1. 什么是Canvas?
    canvas:画布的意思 英 ['kænvəs] 美 ['kænvəs]
    简单理解: 就是用来作图的区域,实现画图必须使用js作图。
    
    2. Canvas有什么作用? 使用的场景有哪些?
    2-1. 可视化数据,数据图形化的报表,比如: 百度echarts【重点】
    2-2. 图形验证码【掌握】
    2-3. 开发H5的小游戏
    2-4. 模拟器产品
    2-5. 特效动画
    
    3. 如何快速使用Canvas?
    3-1. 使用canvas标签
    注意: 建议直接使用 width和height设置画布大小(默认300*150),
    不建议style样式设置画布大小,原因是通过js无法正确获取画布的大小
    -->
    <canvas id="mycanvas" width="1000" height="600"></canvas>
    <script type="text/javascript">
        var mycan=document.getElementById("mycanvas");
        console.log("画布大小",mycan.width,mycan.height);
    </script>
    

    01直线绘制

        <!--1. canvas标签,有宽度和高度-->
        <canvas id="mycanvas" width="1000" height="600"></canvas>
        
        <script type="text/javascript">
            //2. js中获取画布对象
            var canv=document.getElementById("mycanvas");
            
            //3. 上下文中设置绘图方式
            var ct=canv.getContext("2d");  //webgl就是3d效果
            
            //4. 开始作图...
            //常用的方法
            //4-1. 坐标原点: 在画布的左上角,坐标为(0,0),横向x轴,纵向y轴
            //4-2. 绘制的起点:ct.moveTo(x坐标,y坐标)
            //把起点设置在100,100
            ct.moveTo(100,100);
            
            //4-3. 绘制直线: ct.lineTo(x坐标,y坐标)
            //绘制斜线,终点坐标500,300
            ct.lineTo(100,400);
            
            //4-4. 设置线条的颜色: ct.strokeStyle="颜色"
            //设置线条的宽度:ct.lineWidth=数字
            ct.lineWidth=10;
            ct.strokeStyle="red";
            
            //4-5. 开始绘制线条 ct.stroke()
            ct.stroke();
    

    02直线的进阶

    <!--1. canvas标签,有宽度和高度-->
    <canvas id="mycanvas" width="1000" height="600"></canvas>
    
    <script type="text/javascript">
        //2. js中获取画布对象
        var canv=document.getElementById("mycanvas");
        
        //3. 上下文中设置绘图方式
        var ct=canv.getContext("2d");  //webgl就是3d效果
        
        //4. 绘制一个三角形: 3条边,3个线段
        //设置线宽和颜色
        ct.lineWidth=3;
        ct.strokeStyle="#000";
        
        
        
        //设置起点
        ct.moveTo(500,100);
        
        //开始绘制第1条边
        ct.lineTo(600,300);
        //开始绘制
        //ct.stroke();
        
        //开始绘制第2条边
        ct.lineTo(400,300);
        //ct.stroke();
        
        //开始绘制第2条边
        ct.lineTo(500,100);
        ct.stroke();
    </script>
    

    03三角形三边颜色不同

    <!--1. canvas标签,有宽度和高度-->
    <canvas id="mycanvas" width="1000" height="600"></canvas>
    
    <script type="text/javascript">
        //2. js中获取画布对象
        var canv=document.getElementById("mycanvas");
        
        //3. 上下文中设置绘图方式
        var ct=canv.getContext("2d");  //webgl就是3d效果
        
        //4. 绘制一个三角形: 3条边,3个线段
        //设置线宽和颜色
        //开始绘制第1条边
        ct.lineWidth=3;
        //开始路径: ct.beginPath() 开启全新的路径
        ct.beginPath();
        //设置起点
        ct.moveTo(500,100);
        ct.strokeStyle="#f00";
        ct.lineTo(600,300);
        //开始绘制
        ct.stroke();
        
        //开始绘制第2条边
        ct.beginPath();
        ct.strokeStyle="#0f0";
        ct.moveTo(600,300);
        ct.lineTo(400,300);
        ct.stroke();
        
        //开始绘制第3条边
        ct.beginPath();
        ct.strokeStyle="#00f";
        ct.moveTo(400,300);
        ct.lineTo(500,100);
        ct.stroke();
    </script>

    相关文章

      网友评论

          本文标题:Canvas-绘制直线-Day01

          本文链接:https://www.haomeiwen.com/subject/dunqzftx.html