了解CanvasRenderingContext2D.save()
简介
Canvas保存当前Canvas画布状态并放在栈的最上面,可以使用restore()方法依次取出。
保存的只是绘图状态,包括:,绘图效果本身不会被保存
- 当前矩阵变换。参见
transform()等。 - 当前剪裁区域。参见
clip()。 - 当前虚线设置。参见
setLineDash()。 - 以及下面这些属性的值:
strokeStyle,fillStyle,globalAlpha,lineWidth,lineCap,lineJoin,miterLimit,lineDashOffset,shadowOffsetX,shadowOffsetY,shadowBlur,shadowColor,globalCompositeOperation,font,textAlign,textBaseline。
语法
context.save();
没有参数,没有返回值。
案例
先存储默认的Canvas状态,再还原,可以看到填充颜色变成了默认的黑色了。代码如下:
// 保存初始Canvas状态 context,save'=; // 设置红色填充 context,fillStyle ) (red(; // 矩形填充 context,fillRect'20. 20. 100. 60=; // 还原在绘制 context,restore'=; // 矩形填充again context,fillRect'180. 60. 100. 60=;
实时效果如下:
其他
规范文档
| 规范地址 | 规范状态 | 备注 |
|---|---|---|
|
HTML现行标准 这个规范中定义了'CanvasRenderingContext2D.save' |
现行标准 | - |
相关资源
暂无
兼容性
IE9+支持,全兼容。
by zhangxinxu 2019-10-18 01:44:05