Actionscript 3 在Flex3中截图的最快方式是什么?

Actionscript 3 在Flex3中截图的最快方式是什么?,actionscript-3,flex3,screenshot,Actionscript 3,Flex3,Screenshot,在flex中获取屏幕捕获的最快方法是什么?我目前正在使用:(我目前将其编码为Base64以便上载到Web服务器,但这不是必需的。我只希望在服务器上显示一个图像文件) ImageSnapshot.defaultEncoder=JPEG编码器; var-imageSnap:ImageSnapshot=ImageSnapshot.captureImage(>); var screenshotData:String=ImageSnapshot.encodeImageAsBase64(imageSnap)

在flex中获取屏幕捕获的最快方法是什么?我目前正在使用:(我目前将其编码为Base64以便上载到Web服务器,但这不是必需的。我只希望在服务器上显示一个图像文件)

ImageSnapshot.defaultEncoder=JPEG编码器;
var-imageSnap:ImageSnapshot=ImageSnapshot.captureImage(>);
var screenshotData:String=ImageSnapshot.encodeImageAsBase64(imageSnap);

目前,当它实际捕获图像时,整个应用程序将被占用近一秒钟。Base64编码基本上是瞬时发生的。

看看这个问题的答案:


我使用了一个非常类似的函数,速度非常快,所以希望您这样做不会有问题。

查看FLOWING URL,它是一个开源JPEG编码器,比corelibs中的编码器快4倍多


不幸的是,开源JPEG编码器并不比mx.codecs编码器快。但是,内置PNG编码器的速度大约是JPEG编码器的6倍。这解决了我目前遇到的问题,即压缩速度太慢

CookieofFuture提供的“组件缩略图”回答解决了另一个问题,即分别从压缩中拍摄快照(快照对我来说需要5毫秒,压缩,现在,
  ImageSnapshot.defaultEncoder = JPEGEncoder;
  var imageSnap:ImageSnapshot = ImageSnapshot.captureImage(<< flex component >>);
  var screenshotData:String = ImageSnapshot.encodeImageAsBase64(imageSnap);