【问题标题】:How can I save a movie clip symbol in as3 as a PNG on my server?如何在我的服务器上将 as3 中的影片剪辑符号保存为 PNG?
【发布时间】:2013-06-12 21:00:39
【问题描述】:

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

【问题讨论】:

    标签: php image actionscript-3 email symbols


    【解决方案1】:

    您需要几个组件才能实现这一点。 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 将所有图层“展平”为单个 Bitmap/raster 绘图的方法。

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

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-06-24
      • 1970-01-01
      • 2012-05-24
      • 2013-09-29
      相关资源
      最近更新 更多