如何在图像处理中进行 UNDO 动作?如果我要更改图像位置(调整大小、旋转、3D 变换)然后单击 UNDO 按钮,我想要图像的先前状态。怎么做?请提供示例源代码或对此提供一些想法。提前致谢。
问问题
613 次
2 回答
0
实现可撤销操作的常用方法是在每次操作后存储状态。所以,在这种情况下,你可以
- 存储图像的每个版本。这在内存方面效率极低。
- 存储每个变换步骤;当要撤消一个变换时,您只需将变换的逆应用于图像。这是一种优选的方法。
于 2012-09-21T11:26:08.627 回答
0
与NSDictionary
所有effects
提供/或可以与您一起应用editor
- 存入
NSDictionary
一个NSMutableArray
with[lastEffectArray addObject:effectDictionary];
- 如果用户按下 UNDO,则从配对加载和应用
effectDictionary
效果。在这里,您可以做两件事:lastEffectArray
key/value
可以将Remove
last effectDictionary
object from lastEffectArray
or, Add
it for REDO action放到其他数组中。
您effectDictionary
应该存储可以使用或应用到您的editor
. 您可以制作一些易于使用的功能来应用/删除效果!!!
最后,不要忘记[release]
所有效果数组和字典。
注意,这不是一个解决方案,但可以用自己的创新逻辑来实现。
于 2012-09-21T11:41:06.273 回答