• save: save方法会保存当前canvas状态作为一个layer(图层),添加到canvas栈中

  • restore: restore方法会恢复到上一次save之前的状态,此时canvas栈会推出当前顶层的layer,然后将之前倒数第二层的layer弹到顶层。

  • 简单的说,save往栈中压入一个layer,restore推出栈中的最后一个(先入后出原则)

    可以save多次,也可以restore多次,但restore次数不可大于save次数,否则引发错误


    demo: