这个小代码清除了区间中的旧画布数据:
// start interval
ctx.save();
ctx.fillStyle = "rgba(0, 0, 0, 0.2)";
ctx.fillRect(0, 0, ctx.width, ctx.height);
ctx.restore();
//some draw code for new graph
...
//end interval
我的工作区变黑了,因为我将黑色设置为填充色(rgba(0,0,0,.2)),但我需要透明背景,而不是黑色。
我尝试使用globalAlpha和imagePutData,但我失败了。
我怎么能这样做?
答案 0 :(得分:6)
在chrome和firefox上使用rgba(0,0,0,.2)
fillStyle和fillRect()
对我有效 - 它会绘制一个半透明的黑色填充。检查以确保你没有做其他导致某种完全不透明的油漆的东西。
答案 1 :(得分:6)
我认为这会解决您的问题
ctx.fillStyle = "rgba(255, 255, 255, 0.5)";
答案 2 :(得分:3)
尝试ctx.canvas.width,而不是ctx.width
答案 3 :(得分:0)
您的问题已解决
我在使用Windows计算机时遇到了这个问题
我用opacity: .99
解决了这个问题