在同一個canvas中繪制多個不同形狀,顏色的圖形(后面的總是將前面的顏色覆蓋)


今日填坑:

在同一個canvas中繪制多個不同形狀、顏色的圖形,后邊的總是將前面的顏色覆蓋

解決方法:

beginPath() 和 closePath()

這兩個函數可以起到類似 <div> 的作用,用它來把每個圖形包圍,就可以繪制不同顏色的圖形了。
例如

 // 繪制矩形
        ctx.beginPath()
        ctx.rect(486, 455, 58, 43);
        ctx.strokeStyle = '#2DE0A5';
        ctx.stroke();
        ctx.fillStyle = 'rgba(45, 224, 165, 0.3)';
        ctx.fill();
        ctx.closePath()

        ctx.beginPath()
        ctx.rect(486, 498, 58, 43);
        ctx.strokeStyle = '#2DE0A5';
        ctx.stroke();
        ctx.fillStyle = 'rgba(45, 224, 165, 0.3)';
        ctx.fill();
        ctx.closePath()

ok,問題搞定


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM