有没有办法在后台访问 HTMLCanvas
元素DrawingContext2D
save
和restore
堆栈?
目的是为了save
一个基本状态,clip
它的一个区域,允许一些操作发生,这些操作可能适用clip
于不确定的顺序(即save
,restore
可能有save
2-3 个状态到堆栈并且永远不会恢复它们,或者它可能会restore
多次,并且save
在返回父函数之前丢失原始状态,然后父函数将尝试进入restore
堆栈中不再存在的状态。)
我宁愿在没有包装类的情况下执行此操作,DrawingContext2D
因为 JavaScript 在每个函数调用时都会变慢一些,并且渲染往往是时间敏感的。
能够限制被restore
调用函数中可能的调用次数而不依赖被调用函数来维持该限制也很棒。