Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
您正在制作像 Paint 这样的绘图程序。您希望能够撤消/重做笔触。你将如何实现这一点?
优化速度和内存。
使用四叉树记录更改的画布部分的先前状态。在撤消时,从四叉树中替换画布状态。
创建画布的备份副本。选择一个完全包围画笔描边的矩形补丁。将该补丁中包含的位图保存在新版本和备份中。您现在可以对这些更改进行 blit 以撤消或重做笔划。
可能会占用大量内存。