开发者社区> 问答> 正文

存储和恢复 HTML5 Canvas 状态

当我们在 HTML5 Canvas 上使用其 2D 上下文进行图形绘制的时候,可以通过操作 2D 上下文的属性来绘制不同风格的图形,例如不同字体、填充等等。

通常情况下,在画布上的绘图时,您需要更改在绘制的2D背景下的状态。例如,你可能需要一个strokStyle 一行或矩形,另有其他行或矩形strokeStyle。或不同的旋转,或别的东西。

设置绘图的属性非常繁琐,每次更改时都要从来一次,本文将介绍如何利用堆栈来保持绘图的属性并在需要的时候随时恢复。例如我们可以通过下面两个方法来实现保存绘图属性和获取属性:

context.save();     // state pushed onto stack.
 
context.restore();  // state popped from stack, and set on 2D Context.

你可以保持多个绘图属性到堆栈中,并在需要的时候从堆栈中弹出:

展开
收起
a123456678 2016-07-29 09:55:48 2537 0
1 条回答
写回答
取消 提交回答
  • 你可以实现一个库,封装一下canvas常用的功能

    2019-07-17 20:01:32
    赞同 展开评论 打赏
问答标签:
问答地址:
问答排行榜
最热
最新

相关电子书

更多
《零基础HTML入门教程》 立即下载
天猫 HTML5 互动技术实践 立即下载
天猫HTML5互动技术实践 立即下载