回答
使用globalAlpha。您还必须使用fillRect进行绘制。 clearRect只是擦除像素。它不能部分擦除,所以你必须使用fillRect或其他绘图基元。
ctx.globalAlpha = 0.2;
ctx.fillRect(50,50,75,50);
ctx.globalAlpha = 1.0;
ClearRect删除什么在那里,留下空白。最好的方法是使用rgba fillStyle值,因为它只会使矩形(或您绘制的任何其他形状)透明。该代码将是:
ctx.fillStyle = 'rgba(225,225,225,0.5)';
ctx.fillRect(25,72,32,32);
我更喜欢这个选择的答案,因为它在使用后并不影响所有绘图。 –
您可以保存和恢复上下文,以便通过使用环绕其他上下文更改的'ctx.save()'和'ctx.restore()'来全局性地生效。 –
我比较喜欢这个,因为它更具体一些:讨论填充的透明度(我想'清理'一个矩形),而不是任何操作的透明度。这两种解决方案需要4行(因为ctx.save()和ctx.restore()保留上下文)。无论如何,这两种解决方案对我都有好处。 – ddcovery
- 1. HTML5 canvas:围绕文本绘制矩形?
- 2. 绘制矩形
- 3. HTML5不能正确绘制线条,但会绘制矩形
- 4. Pygame绘制矩形
- 5. Android - 绘制矩形
- 6. 点绘制矩形
- 7. Swift绘制矩形
- 8. VB.net绘制矩形形式
- 9. 绘制矩形形状阻力和图像的降HTML5画布
- 10. 在矩形内绘制等距矩形
- 11. 绘制矩形,然后绘制缩小矩形在先前的矩形内
- 12. 更改已绘制的矩形的颜色?
- 13. glRotate更改坐标,以便矩形绘制旋转的平面
- 14. 在iOS中绘制矩形
- 15. 用SharpDX绘制2D矩形
- 16. 绘制旋转的矩形
- 17. NativeWindow绘制矩形Adobe Air
- 18. 在MKMapView中绘制矩形
- 19. OpenGL绘制矩形轮廓
- 20. 如何绘制矩形?
- 21. 绘制可逆矩形
- 22. 绘制多面矩形
- 23. c + +绘制矩形位置
- 24. 绘制矩形图像 - LibGdx
- 25. 在opengl绘制矩形android
- 26. 绘制矩形和网格
- 27. Google Maps API绘制矩形
- 28. 绘制矩形上Mapbox GL
- 29. 从坐标绘制矩形
- 30. 不能绘制矩形
这使得整个画布透明(在Chrome ATLEAST) –
布赖恩,它不清除整个画布,只有你给它的大小和位置。这就是这4个数字;前两个是画布上的X坐标,然后是Y坐标,然后是要清除矩形的X和Y的大小。 (请记住,Y值反而会随着它们下降而在画布中变大) –
请注意,您需要在这两行后面调用'ctx.globalAlpha = 1;'以防止进一步绘制调用(甚至以前不管你信不信)也不会部分透明。 –