浏览 6220 次
精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (0)
|
|
---|---|
作者 | 正文 |
发表时间:2007-09-15
使用flash能做出很好的界面或者图表(chart),但是如何将这些内容保存成图片呢,这个问题是个值得考虑的难题。本文将简单的描述一下解决思路并给出代码。 1。第一步:获取要导出的flash图形数据 2。第二步:将转换的位图数据传递到后台 3。第三步:将客户端传来的数据转换为图形文件 下面给出需要的资源: a)bitmapdata转换为图形ByteArray的类: http://www.kaourantin.net/2005/10/png-encoder-in-as3.html b)bytearray转换为base64编码的类: http://www.dynamicflash.com/goodies/base64 c)解码base64字符串为byte[]的类: http://www.source-code.biz/snippets/java/2.htm
声明:ITeye文章版权属于作者,受法律保护。没有作者书面许可不得转载。
推荐链接
|
|
返回顶楼 | |
发表时间:2007-09-17
第二步是不是可以直接把PNG图像数据byteArray通过http上传的方式上传到servlet,直接生成png图不是一样的吗?为什么还要进行编码转化.
好遗憾现在as3.0还没有jpg的decoder.如果有就好了,flash就可以接受图像数据进行解码显示了. |
|
返回顶楼 | |
发表时间:2007-09-17
你说的方法也可行,只是我没有想到如何传递这个bytearray到后台,这里的这个方法应该是你说的方案:
用URLRequest保存图片 但是感觉这个方法,有点抽象而且繁琐,我只使用urlrequest就可以将图片保存到客户端或者服务端,不需要loader。 |
|
返回顶楼 | |
发表时间:2007-09-18
为什么要base64编码呢,粗粗看了一下,你的方案和在评论里面提到那篇文章的区别在于它直接用字节流传输了,这样更直接。
req.contentType = 'application/octet-stream'; |
|
返回顶楼 | |
发表时间:2007-09-18
可能我没仔细叙述我的需求,我是要实现类似于这样的过程:
AS3-->HTML form to submit-->servlet-->client save file dialog 即点击flash上面的按钮,或者点击html的一个按钮,就要将图形文件返回到客户端进行保存提示,我想了一下,觉得html form只能以string的形式接收图片数据,所以就做了base64的转码处理。 大家认为这样如何? |
|
返回顶楼 | |
发表时间:2007-09-18
如果没有防火墙之类限制的话,那么Raw Socket应该也可以吧
|
|
返回顶楼 | |