我想填充任何颜色到画布,即我希望背景div颜色应该继续显示在div中。我用谷歌搜索了它,但没有找到任何解决方案来保持fillStyle没有颜色。
此外,我尝试省略fillStyle,但它留下了黑色。
有任何可用选项吗?
由于
答案 0 :(得分:5)
我不知道你要做什么,但似乎你想让你的画布透明。你可以用JavaScript做到这一点:
context.fillStyle = "rgba(0, 0, 200, 0)";
或者在CSS中,foo
将是canvas元素的id。请注意,这会使元素本身透明,而不仅仅是内容。
#foo {
opacity: 0;
}
答案 1 :(得分:4)
您需要使用它来清除画布:
context.clearRect(0, 0, canvas.width, canvas.height);
(或您需要的矩形)。
同时确保没有为canvas元素的背景设置CSS规则(如果你的画布在init上不透明,可能就是这种情况,因为画布默认是透明的)。
如果您需要清除非常规形状,可以使用复合模式:
context.globalCompositeOperation = 'destination-out';
(xor
和source-out
也可以在某种程度上也用于移除现有像素,但有一些变化。)
这将以您绘制的下一个形状(路径)的形式清除画布(或使用实心像素将清除画布的图像)。
答案 2 :(得分:0)
您需要清除画布,而不是绘制透明度......只需考虑一下。您无法使用透明涂料清洁玻璃,同样适用于<canvas>
元素。
这个画布演示非常简单
ctx.clearRect(0,0,canvas.width,canvas.height);
之前绘制任何东西,从而保持画布的透明度。