想大牛们请求个问题,画板canvas如何撤销上一笔
画板想做一个撤销功能,现在试了试把每次down,move ,up都作为一个对象保存在数组中,
撤销的话就删掉最后一个重新绘制,但是重新绘制后又好慢啊~~有没有大神提供下思路或者解决方法
10 回复
一开始我也是通过保存图片地址来实现的,后面发现如果一直快速画好几遍,有的会变颜色掉,不知楼主会不?
个人觉得一个更好的方法应该是记录绘画动作数组来实现:在绘制时,把动作数组缓存下来,撤销的时候再对已缓存的动作数组处理即可达到撤销效果,
需要查看源码的或者其他疑问的,可以加我v信: liugerliu
但这样的话,好像会有个性能问题?我试过类似的逻辑,貌似drawimage后,move事件会变得卡顿,后来我换了另一种思路,如果只是划线,把start到move到end这一次划线操作所经过的点记录下来,每次动态绘制,这样性能就好很多了。不会卡