【发布时间】:2012-05-21 07:12:42
【问题描述】:
我目前正在进行的一个 Flash 项目需要我为舞台拍摄一系列屏幕截图并将这些屏幕截图上传到服务器。我已经编写了粘贴在下面的 AS3 代码,以将屏幕截图(转换为 jpeg)发送到 php 处理脚本(imageprocess.php)。
for (var i:int=0; i<sourceArray.length; i++)
{
var jpgEncoder:JPGEncoder = new JPGEncoder(10);
var jpgStream:ByteArray = jpgEncoder.encode(sourceArray[i]);
var header:URLRequestHeader = new URLRequestHeader("Content-type", "application/octet-stream");
var jpgURLRequest:URLRequest = new URLRequest("imageprocess.php?name=drawing" + i +".jpg");
jpgURLRequest.requestHeaders.push(header);
jpgURLRequest.method = URLRequestMethod.POST;
jpgURLRequest.data = jpgStream;
navigateToURL(jpgURLRequest, "_blank"); //switch to ExternalInterface.call("someJS")
}
不幸的是,我发现 navigateToURL 每帧只能运行一次 (http://www.actionscript.org/forums/showthread.php3?t=250594)。看起来我必须使用 ExternalInterface.call 加上一些 Javascript 来上传多个屏幕截图,但我不确定这个 Javascript 代码会是什么样子。谁能提供一些示例 JS 来获取我转换的每个屏幕截图并将它们发送到 php 文件?我真的很感激任何和所有的建议。
【问题讨论】:
标签: javascript actionscript-3 flash image-uploading