canvas 如何绘制线段的实现方法

2020-04-21 07:53:54易采站长站整理


let lineDashOffset = 0; //初始lineDashOffset
ctx.strokeStyle = 'green';
function animate() {
if (lineDashOffset > 25) {
lineDashOffset = 0;
}
ctx.clearRect(0, 0, width, height); //清空当前canvas
ctx.lineDashOffset = -lineDashOffset; //设置lineDashOffset
ctx.setLineDash([4, 4]); // 设置实线长度和间隙长度
ctx.rect(20, 20, 100, 100); //绘制一个矩形
ctx.stroke(); //对canvas当前路径描边
lineDashOffset += 1; //lineDashOffset偏移加1
window.requestAnimationFrame(animate); //用浏览器帧速率来反复执行animate函数
}
animate();

小结

绘制线段时,要理解canvas当前路径概念,某一时刻,canvas中当前路径只有一条,在开始新的路径时,必须调用

beginPath()
。可以通过设置
lineWidth
lineCap
lineJoin
设置线段的绘制样式。在描边线段时,可以通过
strokeStyle
来设置线段的颜色。

canvas中不仅可以绘制实线,还可以通过

lineDashOffset
setLineDash()
来绘制虚线。