Flash AS3利用ByteArray形式上传图片

本文介绍了在Flash AS3中如何利用ByteArray上传图片,避免了FileReference直接上传的限制。通过截图转为BitmapData,使用JPGEncoder编码为ByteArray,然后通过URLRequest和URLLoader以POST方式上传。服务器端接收到流数据后,转换为byte[]并保存为图片。
摘要由CSDN通过智能技术生成

在Flash AS3中上传图片的一般方法为 FileReference 的 upload 方法.

但前提是图片是存在于客户端本地的文件,而不能是存在于内存的数据流。也就是说,在Flash运行过程中生成的图片,除非先用save方法保存至磁盘,否则不可。

 

我在找寻答案的过程中,曾经听说应将图片数据转换为Base64字符串来传输,但这会使传输量大增,说明此并非好方法。

一个可以使用的方法是,将图片保存为byteArray,通过 URLLoader来上传。在服务器端,将其接收保存成图片。

 

[Flash 端]

 

   //截图

   var jpgSource:BitmapData=new BitmapData();
   jpgSource.draw(一个DisplayObjectContainer);

 

   //将图片保存为 ByteArray
   var jpgEncoder:JPGEncoder=new JPGEncoder(100);
   var jpgStream:ByteArray=jpgEncoder.

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值