HTML canvas bezierCurveTo() 方法
定义和用法
bezierCurveTo()
方法通过使用表示三次贝塞尔曲线的指定控制点,向当前路径添加一个点。
提示:三次贝塞尔曲线需要三个点。前两个点是用于三次贝塞尔计算中的控制点,第三个点是曲线的结束点。曲线的开始点是当前路径中最后一个点。如果路径不存在,那么请使用 beginPath() 和 moveTo() 方法来定义开始点。

- 开始点:moveTo(
20
,20
) - 控制点 1:bezierCurveTo(
20
,100
,200,100,200,20) - 控制点 2:bezierCurveTo(20,100,
200
,100
,200,20) - 结束点:bezierCurveTo(20,100,200,100,
200
,20
)
提示:请查看 quadraticCurveTo() 方法。它有一个控制点,而不是两个。
实例
绘制一条三次贝塞尔曲线:
JavaScript:
var c=document.getElementById("myCanvas"); var ctx=c.getContext("2d"); ctx.beginPath(); ctx.moveTo(20,20); ctx.bezierCurveTo(20,100,200,100,200,20); ctx.stroke();
รูปแบบ
context.bezierCurveTo(cp1x,cp1y,cp2x,cp2y,x,y);
ค่าตัวแปร
ตัวแปร | คำอธิบาย |
---|---|
cp1x | ตำแหน่ง x ของจุดควบคุมเบซีลเออร์ที่หนึ่ง |
cp1y | ตำแหน่ง y ของจุดควบคุมเบซีลเออร์ที่หนึ่ง |
cp2x | ตำแหน่ง x ของจุดควบคุมเบซีลเออร์ที่สอง |
cp2y | ตำแหน่ง y ของจุดควบคุมเบซีลเออร์ที่สอง |
x | ตำแหน่ง x ของจุดสิ้นสุด |
y | ตำแหน่ง y ของจุดสิ้นสุด |
การสนับสนุนโดยเบราเซอร์
ตัวเลขในตารางนี้ระบุเวอร์ชั่นของเบราเซอร์ที่สนับสนุนคุณสมบัตินี้อย่างเต็มที่
Chrome | Edge | Firefox | Safari | Opera |
---|---|---|---|---|
Chrome | Edge | Firefox | Safari | Opera |
4.0 | 9.0 | 3.6 | 4.0 | 10.1 |
หมายเหตุ:Internet Explorer 8 และเวอร์ชั่นเก่ากว่านี้ไม่สนับสนุนสมาชิก <canvas>