<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>canvas</title>
<style>
#myCanvas {
margin: 0 auto;
border: 1px solid #666;
display: block;
}
</style>
</head>
<body>
<canvas id="myCanvas" width="600" height="800">您的浏览器不支持 HTML5 canvas 标签。</canvas>
<script>
var c = document.getElementById("myCanvas");
var ctx = c.getContext("2d");
ctx.beginPath();
ctx.arc(300, 200, 100, 0, 2 * Math.PI);
ctx.stroke();
ctx.beginPath();
ctx.arc(250, 180, 10, 0, 2*Math.PI);
ctx.stroke();
ctx.beginPath();
ctx.arc(350, 180, 10, 0, 2*Math.PI);
ctx.stroke();
ctx.beginPath();
ctx.arc(250, 185, 5, 0, 2*Math.PI);
ctx.fillStyle="black";
ctx.fill();
ctx.stroke();
ctx.beginPath();
ctx.arc(350, 185, 5, 0, 2*Math.PI);
ctx.stroke();
ctx.fillStyle="black";
ctx.fill();
ctx.beginPath();
ctx.moveTo(260,250);
ctx.bezierCurveTo(260,250,290,300,345,250);
ctx.stroke();
ctx.beginPath();
ctx.moveTo(265,294);
ctx.lineTo(265,315);
ctx.stroke();
ctx.beginPath();
ctx.moveTo(335,294);
ctx.lineTo(335,315);
ctx.stroke();
ctx.beginPath();
ctx.moveTo(265,315);
ctx.bezierCurveTo(305,305,310,310,335,315);
ctx.stroke();
</script>
</body>
</html>
从学习的角度讲:简单而言,你要学会封装,从而实现代码的复用
从实用的角度讲:你应该学会从网上找一些现成的底层库(就是实现一些下面说的封装逻辑)来实用
使用基于 canvas 的 js 库,来简化绘制。