flash as3 和 adobe air -- 保存绘图文件,之后可以撤消/重做

Posted

技术标签:

【中文标题】flash as3 和 adobe air -- 保存绘图文件,之后可以撤消/重做【英文标题】:flash as3 and adobe air -- save drawing file with the ability to undo/redo afterwards 【发布时间】:2013-08-20 01:06:52 【问题描述】:

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

我对 BitmapData、Bitmap、Sprite、File 和 FileStream 进行了研究,但没有任何东西可以作为保存后撤消/重做的方法。

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

【问题讨论】:

【参考方案1】:

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

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

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

希望有帮助!

【讨论】:

我会试试的。感谢您的所有帮助!

以上是关于flash as3 和 adobe air -- 保存绘图文件,之后可以撤消/重做的主要内容,如果未能解决你的问题,请参考以下文章

使用AS3 Adob e AIR加载YouTube视频

如何在 Flash AIR 和 AS3 中使用触控?

如何使用 Adob​​e air 在静音模式下检测设备并与之交互 - AS3

Flash 10 + AS 2.0中Adobe AIR和Zinc的良好替代品

Flash Builder、Adobe AIR 和 iOS 开发的包检查失败错误

adobe air vs flex vs flash builder ---我需要解释一下