CanvasRenderingContext2D.save()
CanvasRenderingContext2D.save() - метод Canvas 2D API. Сохраняет все состояния и добавляет текущее состояние в стек.
Состояние чертежа
Состояние чертежа, которое сохраняется в стеке, состоит из:
- Текущая матрица преобразования.
- Текущая область отсечения.
- The current dash list.
- Текущие значения следующих атрибутов:
strokeStyle,fillStyle,globalAlpha,lineWidth,lineCap,lineJoin,miterLimit,lineDashOffset,shadowOffsetX(en-US),shadowOffsetY(en-US),shadowBlur(en-US),shadowColor(en-US),globalCompositeOperation(en-US),font,textAlign,textBaseline,direction(en-US),imageSmoothingEnabled(en-US).
Синтаксис
void ctx.save();
Пример
Сохранение состояния чертежа
Этот пример использует метод save() для сохранения состояния по умолчанию, и метод restore() для восстановления состояния позже, чтобы позже можно было нарисовать прямоугольник с состоянием по умолчанию.
HTML
html
<canvas id="canvas"></canvas>
JavaScript
const canvas = document.getElementById('canvas');
const ctx = canvas.getContext('2d');
// Сохранение состояния по умолчанию
ctx.save();
ctx.fillStyle = 'green';
ctx.fillRect(10, 10, 100, 100);
// Восстановление состояния по умолчанию
ctx.restore();
ctx.fillRect(150, 40, 100, 100);
Результат
Спецификации
| Specification |
|---|
| HTML Standard # dom-context-2d-save-dev |
Совместимость с браузерами
BCD tables only load in the browser
Смотрите также
- Интерфейс, предоставляющий данный метод:
CanvasRenderingContext2D CanvasRenderingContext2D.restore()