Я хочу масштабировать и панорамировать холст HTML5, преобразовывая контекст с помощью translate()
и scale()
, очищая холст, а затем перерисовывая. Обратите внимание, что я явно не вызываю save()
и restore()
вокруг моих преобразований.
Если я выполню стандартный ctx.clearRect(0,0,ctx.canvas.width,ctx.canvas.height)
, то весь видимый холст не будет очищен; масштабирование или панорамирование может привести к тому, что этот начальный прямоугольник не будет точно закрывать область рисования.
Если я выполняю метод очистки, удобный для Webkit...
var w=canvas.width;
canvas.width = 0;
canvas.width = w;
... тогда кумулятивное преобразование контекста reset.
Как я могу наилучшим образом очистить весь контекст canvas без потери трансформации?