0

我正在为一家公司开发一个 Flash 网站,到目前为止进展顺利。该网站允许人们创建自定义栏杆。该公司的所有者希望我将 Flash(电影剪辑)中显示的演示图片保存为图像(首选 PNG),以便我可以将其包含在验证电子邮件中。请问有人知道该怎么做吗?我需要在网络服务器上保存一个影片剪辑符号。提前致谢!

4

1 回答 1

0

您需要几个组件才能实现这一点。AS3 不在服务器端执行(无法访问服务器硬盘),因此您必须在服务器上使用其他语言来接收文件。我个人会推荐 PHP,因为它非常适合这种简单的任务,并且网上有很多教程用于使用 PHP 处理上传的文件。

在 AS3 方面,您可以使用 BitmapData.draw 方法将 Sprite 或任何其他 IBitmapDrawable 对象绘制到 BitmapData。然后使用 PNG 编码器(可以使用内置或搜索其他一些实现)将 BitmapData 编码为 PNG。最后一步将编码的 PNG 发送到服务器,并让它将文件保存在脚本具有写入权限的位置。

对于一些参考这里是我写的一些代码:

基本上单击我的应用程序中的保存按钮并显示下面的类的实例,然后具有保存方法。获得展平图像后,它使用我发现名为 PNGEncoder2 的第三方 PNGEncoder 进行调用

https://github.com/wafflejock/FingerPainting/blob/master/FlashBuilderProject/FingerPainting/src/com/shaunhusain/fingerPainting/view/optionPanels/SaveOptions.as

下面我有一个单独的类来管理所有“图层”,这些“图层”实际上只是我的绘图应用程序的精灵。下面的“LayerManager”具有使用 BitmapData.draw 将所有图层“展平”为单个位图/光栅图形的方法。

https://github.com/wafflejock/FingerPainting/blob/master/FlashBuilderProject/FingerPainting/src/com/shaunhusain/fingerPainting/view/managers/LayerManager.as

于 2013-06-17T04:54:49.703 回答