如何在 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+ 次瀏覽

開啟您 的 職業生涯

完成課程即可獲得認證

開始
廣告