closePath()并不是結束路徑,而是閉合路徑
closePath()是自動畫一條直線與起點相連閉合路徑,并不是與beginPath()一起使用來開啟新路徑和關閉路徑,兩者一毛錢關系都沒有,beginPath()本身就有結束之前路徑的作用
如下兩段代碼:
window.onload = function() {
var canvas = document.getElementById('canvas');
var context = canvas.getContext('2d');
? ? context.moveTo(50,50);
context.lineTo(500,400);
context.lineTo(500,50);
context.strokeStyle='red';
context.closePath();
context.stroke();
context.beginPath();
context.moveTo(50,50);
context.lineTo(500,225);
context.strokeStyle='green';
context.stroke();
}
開始只畫了兩條線段,closePath()自動閉合路徑成一個三角形,后面把顏色改為綠色但是只影響最后畫的一條線段并沒有全部變綠,說明beginPath()已經結束了之前的路徑
2019-04-15
分析的沒錯,context.closePath()只是閉合之前的路徑,context.beginPath()才是重新開始新的路徑