看起来有人确实向Chromium论坛提到了这个错误,但没有解决方案,所以我想知道是否有人只是知道一个解决方法。
问题是尝试使用canvas元素在Chrome中逆时针呈现半圈。相反,这会呈现一个完整的圆圈:
var ctx = document.getElementById('can').getContext('2d');
ctx.beginPath();
ctx.arc(50,50,50,0,Math.PI*3,true);
ctx.fill();
ctx.closePath();
这是一个小提琴,非铬色视图,然后是chrome:fiddle
答案 0 :(得分:2)
该错误可能源于this part of the spec:
如果省略逆时针参数或者为false endAngle-startAngle等于或大于2π,或者,如果是 anticlockwise参数为true,startAngle-endAngle等于或 大于2π,那么弧就是整个圆周 圈。
Chrome似乎不尊重该声明的第二部分(即anticlockwise
为true
时)。
为什么不规范你的终点?
var end = 3 * Math.PI;
while (end > 2 * Math.PI) {
end -= 2 * Math.PI;
}