2016-12-15 43 views
2

我试图在画布上绘制萤火虫。我有一个1x1白色像素的图像,我想围绕它来模拟发光。到目前为止,我已经设法绘制了圆,但是当我尝试更改我的2D上下文的全局alpha时,图像不绘制,圆也不绘制。这一直困扰着我一段时间,因为我绘制图像之前,我画它的周围的圈子。我怎样才能解决这个问题?透明圈子没有显示[HTML5/JavaScript]

我的代码:

thatBug.draw = function() { 

    ctx.drawImage(bugImage, thatBug.x, thatBug.y, thatBug.size, thatBug.size); 

    ctx.save(); 
    ctx.globalAlpha(0.4); 
    ctx.beginPath(); 
    ctx.arc(thatBug.x, thatBug.y, thatBug.size + thatBug.glowAmt, 0, 2 * Math.PI, false); 
    ctx.fillStyle = 'white'; 
    ctx.fill(); 
    ctx.restore(); 

}; 
+0

您应该首先查看控制台,看看是否有任何错误。它会告诉你'ctx.globalAlpha不是一个函数'而且[MDN:CanvasRenderingContext2D.globalAlpha](https://developer.mozilla.org/en/docs/Web/API/CanvasRenderingContext2D/globalAlpha)告诉你它是一个设置属性而不是函数。 –

+0

在发布这个问题以及一个小时的挣扎之后,我跳了起来,并意识到我甚至没有检查过控制台,这可能是因为错误。猜猜我需要睡更多,谢谢@ t.niese – Flizzet

回答

1

固定它自己。 ctx.globalAlpha(0.4)应该是globalAlpha = 0.4