画布不透明 - 更改默认背景颜色

时间:2015-10-16 19:39:30

标签: javascript android html5 animation canvas

我正在使用myscripts[i].init(); wiki info)来移除画布不透明度并提高动画效果。不幸的是,之后,帆布元素获得白色背景。是否可以选择更改画布背景/颜色的默认颜色?

我尝试canvas.getContext('2d', {alpha: false});来填充整个区域,但是(因为动画)我觉得这不是最好的解决方案:

drawImage()

我非常关心性能,所以只更改一次颜色会很有用。

有什么想法吗?

1 个答案:

答案 0 :(得分:3)

没有。默认背景始终为黑色。

  

Canvas 2D API的CanvasRenderingContext2D.clearRect()方法   设置由起点(x,y)和定义的矩形中的所有像素   尺寸(宽度,高度)到透明黑色,擦除任何先前的   绘制内容。

不要清除画布,只需设置fillRect以填充所需的颜色。

var canvas = document.querySelector('#mycanvas'),
    ctx = canvas.getContext('2d', {alpha: false});

function run() {
    ctx.fillStyle = "#FF0000";
    ctx.fillRect(0, 0, size.width, size.height);

    draw();
    update();

    requestAnimationFrame(run);
}