保存在Flex中创建的大图像

时间:2009-11-25 22:09:20

标签: flex flash actionscript-3

我正在尝试捕获在Flash Player中动态制作的非常大的图像(图像大小为2400像素×12,000像素),并且遇到了一些非常严重的问题...让我说明图像的运行方式首先得到那个尺寸:

用户向画布添加元素,然后当用户完成时,画布可以扩展到2400px宽和~12,000px高。当我尝试将图像保存到硬盘驱动器时出现问题。现在,我不知道这是否会影响推荐的修复,但渲染的图像不会保存在硬盘上,它将被发送到服务器。我知道Flash Player中的~4050px限制,并且认为我可以通过使用ImageSnapshot.captureBitmapData()方法剪切图像并将所需的Rectangle变量保持在4000px以下,然后在大图像中重复该操作直到它到达结尾最终图像将在稍后拼凑在一起的位置。但是......正如我所提到的那样,当它到达'fileReference.save(pngImage)时出现错误;'方法......还有其他人做过这样的事吗?

1 个答案:

答案 0 :(得分:1)

如果fileReference.save完全有效(例如像100 px身高的较小图片),您是否尝试过?似乎图像数据可能会转换为字符串数据,因此目前可能还有其他限制(您的未压缩图像数据大约为86 MB,因此即使压缩效果良好的PNG文件也可能是大约10 MB的大小,目前你试图节省三分之一,但3 MB仍然是相当大的。)