1

我正在使用 Flash CS6 制作 Adob​​e Air 绘图应用程序。我想要一个保存选项,让您在保存并退出程序并再次打开它后撤消/重做画线笔划。

我研究了 BitmapData、Bitmap、Sprite、File 和 FileStream,但没有任何东西可以作为一种保存方式,并且能够在之后撤消/重做。

顺便说一句,我已经制作了保存、打开和读取文件的功能。我只是不知道要在保存的文件中放入什么。

4

1 回答 1

1

为将包含图形对象的每一行创建一个类。在每个笔划上创建该类的一个实例并将其添加到一个数组中。在保存时(假设您保存了一个 XML 文件),您可以创建一个节点,就像< canvas >您在其中存储所有子节点以及每行信息一样。

加载时读取 XML 文件并使用您的对象重新创建数组。XML 节点的顺序将是您的深度/z-index/层顺序和您撤消/重做的历史记录。

如果你想更进一步,假设只撤消笔画的颜色变化,你需要创建一个 ActionHistory 类来指向一个动作和对象。

希望有帮助!

于 2013-08-20T05:26:00.557 回答