Canvas初探入门— 基础图形的绘制

前言

Canvas是HTML5的一个新特性,canvas又叫做画板。顾名思义,我们可以在canvas上绘制我们需要的图形。之前了解过python的turtle库,感觉有些类似,下面一起来看看如何绘制简单的canvas图形

绘制基础图形

定义canvas标签

在html中定义一个canvas标签

<canvas id="canvas" width="800" height="600"></canvas>

也就是定义一个画布,确定它的宽度和高度

JS中进行绘制

下面进行绘制,注意看注释哦

//获得画布元素
var canvas=document.getElementById("canvas");
//获得2维绘图对象
var ctx=canvas.getContext("2d");
//设置线宽
ctx.lineWidth = 3;
//颜色  
ctx.strokeStyle = 'red'; //线条
ctx.fillStyle = 'blue';  //填充色
ctx.moveTo(10,10); //起点
ctx.lineTo(100,10); //下一点
ctx.lineTo(100,100); //下一点
ctx.lineTo(10,10); //下一点
ctx.stroke();  //fill()执行填充色  stroke()执行线条
ctx.fill();

然后运行到浏览器就出现了效果

在这里插入图片描述

绘制新图形

如果我们画完了这个图像,想再旁边再画一个,那么就要用到 ctx.beginPath();

//重新绘制
ctx.beginPath();
ctx.moveTo(300,10);//移动到新的坐标开始绘制
ctx.lineTo(300,50);
ctx.lineTo(400,50);
ctx.closePath();//闭合
ctx.stroke(); 

在这里插入图片描述
下面附上完整代码,可以自行动手试一试,画出其它的图形

<!DOCTYPE html>
<html>
    <head>
        <meta charset="UTF-8">
        <title></title>
    </head>
    <body>
        <canvas id="canvas" width="800" height="600"></canvas>
        <script>
           //获得画布元素
            var canvas=document.getElementById("canvas");
            //获得2维绘图对象
            var ctx=canvas.getContext("2d");
            //设置线宽
            ctx.lineWidth = 3;
            //颜色  
            ctx.strokeStyle = 'red'; //线条
            ctx.fillStyle = 'blue';  //填充色
            ctx.moveTo(10,10); //起点
            ctx.lineTo(100,10); //下一点
            ctx.lineTo(100,100); //下一点
            ctx.lineTo(10,10); //下一点
            ctx.stroke();  //fill()执行填充色  stroke()执行线条
            ctx.fill();

            //重新绘制
            ctx.beginPath();
            ctx.moveTo(300,10);
            ctx.lineTo(300,50);
            ctx.lineTo(400,50);
            ctx.closePath();//闭合
            ctx.stroke(); 
        </script>
    </body>
</html>

最后

这篇主要时讲canvas实现基本图形的绘制,后面会继续给大家带来canvas的其它操作
不要以为canvas只能绘制这些简单的图形哦,学好之后能给实现酷炫的效果,
比如:
想要这两个效果图的也可以私聊我获取源码~

在这里插入图片描述
在这里插入图片描述

  • 3
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Beiyux

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值