2009-06-03 239 views
0

是否可以拍摄Stage的屏幕截图(转储图像)并将其保存到我的网络服务器?屏幕截图

+1

请定义“舞台”。 – Noldorin 2009-06-03 19:41:26

+1

http://livedocs.adobe.com/flash/9.0/ActionScriptLangRefV3/flash/display/Stage.html – 2009-06-03 19:45:24

回答

7

这应该做的伎俩:

var myBitmapData:BitmapData = new BitmapData(stage.stageWidth, stage.stageHeight); 
myBitmapData.draw(stage); 

(其实我不知道,如果你能在舞台上直接做一个平局(),你可能需要做就什么是对你的顶部显示列表代替)

然后使用这样的代码:http://henryjones.us/articles/using-the-as3-jpeg-encoder

var jpgEncoder:JPGEncoder = new JPGEncoder(85); 
var jpgStream:ByteArray = jpgEncoder.encode(myBitmapData); 

var header:URLRequestHeader = new URLRequestHeader("Content-type", "application/octet-stream"); 
var jpgURLRequest:URLRequest = new URLRequest("jpg_encoder_download.php?name=sketch.jpg"); 
jpgURLRequest.requestHeaders.push(header); 
jpgURLRequest.method = URLRequestMethod.POST; 
jpgURLRequest.data = jpgStream; 
navigateToURL(jpgURLRequest, "_blank"); 

将其发送到服务器。