Flex4中实现捕捉组件快照(截图)的功能
代码如下:
<?xml version="1.0" encoding="utf-8"?>
<s:Application xmlns:fx="http://ns.adobe.com/mxml/2009"
xmlns:s="library://ns.adobe.com/flex/spark"
xmlns:mx="library://ns.adobe.com/flex/mx" minWidth="955" minHeight="600">
<s:layout>
<s:BasicLayout/>
</s:layout>
<fx:Script>
<![CDATA[
import mx.graphics.ImageSnapshot;
protected function button1_clickHandler(event:MouseEvent):void
{
var imageSnap:ImageSnapshot = ImageSnapshot.captureImage(text1);
var imageByteArray:ByteArray = imageSnap.data as ByteArray;
image1.load(imageByteArray);
}
]]>
</fx:Script>
<fx:Declarations>
<!-- 将非可视元素(例如服务、值对象)放在此处 -->
</fx:Declarations>
<s:TextArea id="text1" x="80" y="84" width="172"/>
<mx:Image id="image1" x="334" y="84" width="172" height="151"/>
<s:Button x="80" y="27" label="截图" click="button1_clickHandler(event)"/>
</s:Application>
在TextArea组件中输入相应的内容,然后点击“截图”按钮,通过ImageSnapshot类的功能,可以把组件的快照保存下来,通过data属性可以获取快照ByteArray类型的数据,我这里把截图放到Image组件里来显示了。这是一个辅助性的功能,说不定什么时候就可以派上用场哦。

浙公网安备 33010602011771号