【问题标题】:When setting a transparent background to Canvas, the animation starts to leave traces给Canvas设置透明背景时,动画开始留下痕迹
【发布时间】:2019-04-15 08:47:15
【问题描述】:

当我为背景设置任何颜色时,动画效果很好。但是当我放置透明背景时,动画“波浪”开始留下痕迹。我该如何解决这个问题?

https://codepen.io/obiwan-kenobi/pen/JebWjG

ctx.fillStyle = 'rgba(255,255,255,0)'; 
ctx.fillRect.apply(ctx, _toConsumableArray(bounds.params)); 

enter image description here

【问题讨论】:

  • 在第 338 行使用clearRect 而不是fillRect。而且你不需要设置ctx.fillStyle = "rgba(255,255,255,0)";
  • @enxaneta,谢谢!是的!这正是我所需要的。

标签: javascript canvas


【解决方案1】:

它会留下痕迹,因为您需要重新绘制画布的更改区域,或者更简单地说,重新绘制整个场景。

您正在使用铅笔并在同一张纸上绘制每一帧,而无需使用橡皮擦。这就是为什么。 :)

【讨论】:

猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2023-04-05
  • 1970-01-01
  • 1970-01-01
  • 2013-12-14
  • 1970-01-01
  • 2019-06-09
  • 1970-01-01
相关资源
最近更新 更多