Firefox에서 canvas clearRect를 사용하여 이상한 문제가 발생했습니다. 클리핑 영역이 설정되면 clearRect()는 클리핑 영역과 사각형 밖에있는 내용을 지우도록 다시 그립니다. 이 문제를 해결하기 위해 다시 그리기 때문에 문제가 발생합니다. Chrome 및 IE와 같은 다른 브라우저에서도 올바르게 작동합니다. clearRect는 클리핑 영역 외부의 콘텐츠에는 영향을 미치지 않습니다. 행동캔버스 : 클립 후 clearRect로 인해 Firefox에서 문제가 발생했습니다.
var canvas = document.getElementById("test");
var context = canvas.getContext('2d');
context.fillStyle = 'rgba(255, 0, 0, 0.1)';
context.fillRect(0, 0, 40, 40);
context.beginPath();
context.rect(0, 0, 20, 20);
context.clip();
context.clearRect(10, 10, 20, 20); // causes an issue, see example below
코드 : http://jsfiddle.net/P8fyP/4/
은 FF18/Mac OS 10.6.8에서 작동합니다. – GameAlchemist