简介
HTML <canvas>
标签用于通过 JavaScript 在网页上绘制图形。您可以使用 <canvas>
来绘制图表、制作游戏、创建动画,甚至是处理照片或实时视频流等。
基本语法
<canvas id="myCanvas" width="200" height="100"></canvas>
在上述代码中,id
属性是必需的,它用于通过 JavaScript 访问 <canvas>
元素。width
和 height
属性指定了 <canvas>
区域的大小,单位为像素。如果这些属性没有被设置,默认值将是 300x150 像素。
使用 JavaScript 绘制图形
要在 <canvas>
上绘制图形,您需要首先获取该元素的上下文(context)对象。然后,您可以使用此上下文对象提供的方法来绘制图形。
var canvas = document.getElementById("myCanvas");
var ctx = canvas.getContext("2d");
在上述代码中,getContext("2d")
返回了一个用于在 <canvas>
上绘制的二维渲染上下文对象。
绘制矩形
要使用 <canvas>
绘制矩形,您可以使用 fillRect(x, y, width, height)
或 strokeRect(x, y, width, height)
方法:
// 填充矩形
ctx.fillStyle = "blue";
ctx.fillRect(20, 20, 150, 100);
// 描边矩形
ctx.lineWidth = 5;
ctx.strokeStyle = "red";
ctx.strokeRect(30, 30, 130, 70);
绘制线条
要使用 <canvas>
绘制线条,您可以使用 beginPath()
、moveTo(x, y)
、lineTo(x, y)
和 stroke()
方法:
ctx.beginPath();
ctx.moveTo(50, 50);
ctx.lineTo(150, 50);
ctx.strokeStyle = "green";
ctx.stroke();
绘制圆形和椭圆
要使用 <canvas>
绘制圆形或椭圆,您可以使用 arc(x, y, radius, startAngle, endAngle)
方法:
// 绘制一个圆
ctx.beginPath();
ctx.arc(95, 50, 40, 0, 2 * Math.PI);
ctx.fillStyle = "yellow";
ctx.fill();
// 绘制一个椭圆
ctx.beginPath();
ctx.ellipse(130, 70, 50, 30, Math.PI / 4, 0, 2 * Math.PI);
ctx.strokeStyle = "purple";
ctx.stroke();
结语
HTML <canvas>
标签提供了一个用于通过 JavaScript 绘制图形的平面。这些图形可以是基本的形状,也可以是复杂的图像。希望这个教程能够帮助您更好地理解和使用 <canvas>
标签。