1
我正在使用畫布繪製一個簡單的進度指示器。當元素第一次被繪製時,它看起來很好,並且是反鋸齒的,但是當再次繪製時,它會失去抗鋸齒。任何人都知道這裏會發生什麼?在safari中重新繪製時畫布形狀變爲別名
function drawProgress(id, percent) {
var selected = $(safeID(id)).is('.selected');
var canvas = $(safeID("CANVAS_" + id));
var ctx = $(canvas)[0].getContext('2d');
ctx.clearRect();
if (selected) {
ctx.fillStyle = "#ffffff";
ctx.strokeStyle = "#ffffff";
}
else {
ctx.fillStyle = "#99a7ca";
ctx.strokeStyle = "#99a7ca";
}
ctx.beginPath();
ctx.arc(canvas.width()/2.0, canvas.height()/2.0, canvas.width()/2.0-1, 0, Math.PI, false);
ctx.fill();
ctx.beginPath();
ctx.arc(canvas.width()/2.0, canvas.height()/2.0, canvas.width()/2.0-1, 0, Math.PI*2.0, false);
ctx.stroke();
}
大聲笑。我只是注意到,然後衝回來回答。太慢我猜:) – 2011-01-06 02:34:42
我想這可以回答人們關於消除反鋸齒的問題。只需繪製相同的形狀5次,部分Alpha通道的像素將自行填充以顯示別名。 – 2011-01-06 02:40:11