Javascript 360度画布圆弧中的间隙

Javascript 360度画布圆弧中的间隙,javascript,canvas,html5-canvas,Javascript,Canvas,Html5 Canvas,为什么360度弧中有间隙 ctx.beginPath(); ctx.moveTo(100, 100); ctx.arc(100, 100, 100, 90 * Math.PI / 180, 450 * Math.PI / 180); 而从0到360的弧没有 ctx.beginPath(); ctx.moveTo(310, 100); ctx.arc(310, 100, 100, 0 * Math.PI / 180, 360 * Math.PI / 180); 这是一个bug或者我做错了什么

为什么360度弧中有间隙

ctx.beginPath();
ctx.moveTo(100, 100);
ctx.arc(100, 100, 100, 90 * Math.PI / 180, 450 * Math.PI / 180);
而从0到360的弧没有

ctx.beginPath();
ctx.moveTo(310, 100);
ctx.arc(310, 100, 100, 0 * Math.PI / 180, 360 * Math.PI / 180);


这是一个bug或者我做错了什么?

这不是bug,只是一个抗锯齿的怪癖。Chrome的抗锯齿似乎过于精确,因此在某些情况下会出现一个小间隙


在FF和IE10上不会出现这种情况。

Chrome在画布的arc方法上有几个问题

在Chrome中,可以通过如下方式轻推角度来解决此问题:

ctx.arc(100, 100, 100, 90 * Math.PI / 180.01, 450 * Math.PI / 180.01);