在同一个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