CanvasContext.quadraticCurveTo
收藏
我的收藏

注意:该接口已停止维护,建议使用 Canvas 组件 V2

基础库 1.0.0 开始支持本方法,这是一个同步方法。

创建二次贝塞尔曲线路径。需要 2 个点。 第一个点是控制点,第二个点是终点。 起始点是当前路径最新的点,创建二次贝赛尔曲线之前,可以使用 CanvasContext.moveTo 方法进行改变。

语法

CanvasContext.quadraticCurveTo(cpx, cpy, x, y)

参数说明

cpx

类型默认值必填说明最低支持版本
number贝塞尔控制点的 x 坐标1.0.0

cpy

类型默认值必填说明最低支持版本
number贝塞尔控制点的 y 坐标1.0.0

x

类型默认值必填说明最低支持版本
number终点的 x 轴坐标1.0.0

y

类型默认值必填说明最低支持版本
number终点的 y 轴坐标1.0.0

返回值

扫码体验

请使用字节宿主APP扫码

代码示例

开发者工具中预览

【示例 1】简单示例:

<!-- index.ttml --> <canvas canvas-id="myCanvas"></canvas>

// index.js Page({ onReady: function (options) { const canvasCtx = tt.createCanvasContext("myCanvas"); canvasCtx.beginPath(); // 起始点 canvasCtx.moveTo(20, 20); // 控制点(20,100) 结束点(200,20) canvasCtx.quadraticCurveTo(20, 100, 200, 20); canvasCtx.stroke(); canvasCtx.draw(); }, });

【示例 2】带坐标系示例:

<!-- index.ttml --> <canvas canvas-id="myCanvas"></canvas>

// index.js Page({ onReady: function (options) { const canvasCtx = tt.createCanvasContext("myCanvas"); canvasCtx.beginPath(); // 起始点(20,20) canvasCtx.arc(20, 20, 2, 0, 2 * Math.PI); canvasCtx.setFillStyle("red"); canvasCtx.fill(); canvasCtx.beginPath(); canvasCtx.arc(200, 20, 2, 0, 2 * Math.PI); canvasCtx.setFillStyle("lightgreen"); canvasCtx.fill(); canvasCtx.beginPath(); canvasCtx.arc(20, 100, 2, 0, 2 * Math.PI); canvasCtx.setFillStyle("blue"); canvasCtx.fill(); canvasCtx.setFillStyle("black"); canvasCtx.setFontSize(12); // Draw guides canvasCtx.beginPath(); canvasCtx.moveTo(20, 20); canvasCtx.lineTo(20, 100); canvasCtx.lineTo(200, 20); canvasCtx.setStrokeStyle("#AAAAAA"); canvasCtx.stroke(); // Draw quadratic curve canvasCtx.beginPath(); canvasCtx.moveTo(20, 20); // 控制点(20,100) 结束点(200,20) canvasCtx.quadraticCurveTo(20, 100, 200, 20); canvasCtx.setStrokeStyle("black"); canvasCtx.stroke(); canvasCtx.draw(); }, });

Bug & Tip

该文档是否有帮助?