如何在 HTML5 Canvas 中绘制贝塞尔曲线?


HTML5 <canvas> 标签用于通过脚本绘制图形、动画等。它是 HTML5 中引入的一个新标签。canvas 元素有一个名为 getContext 的 DOM 方法,它获取渲染上下文及其绘制函数。此函数获取一个参数,即上下文类型 2d。

要使用 HTML5 canvas 绘制贝塞尔曲线,请使用 bezierCurveTo() 方法。该方法将给定点添加到当前路径中,该点通过具有给定控制点的立方贝塞尔曲线连接到前一个点。

Bezier Curve

您可以尝试运行以下代码来了解如何在 HTML5 Canvas 中绘制贝塞尔曲线。bezierCurveTo() 方法中的 x 和 y 参数是端点的坐标。cp1x 和 cp1y 是第一个控制点的坐标,cp2x 和 cp2y 是第二个控制点的坐标。

示例

<!DOCTYPE html>
<html>
<head>
<title>HTML5 Canvas Tag</title>
</head>

<body>
<canvas id = "newCanvas" width = "500" height = "300" style = "border:1px solid #000000;"></canvas>
<script>
var c = document.getElementById('newCanvas');
var ctx = c.getContext('2d');
ctx.beginPath();
ctx.moveTo(75,40);
ctx.bezierCurveTo(75,37,70,25,50,25);
ctx.bezierCurveTo(20,25,20,62.5,20,62.5);
ctx.bezierCurveTo(20,80,40,102,75,120);
ctx.bezierCurveTo(110,102,130,80,130,62.5);
ctx.bezierCurveTo(130,62.5,130,25,100,25);
ctx.bezierCurveTo(85,25,75,37,75,40);
ctx.fill();
</script>

</body>
</html>

输出

更新于:2021 年 12 月 16 日

1000+ 次浏览

开启您 的 职业生涯

完成课程即可获得认证

开始
广告