Flex 截屏实现(Flex画面快照截图及显示又一方式)

本文介绍了一种使用Flex的ImageSnapshot类进行简易截图的方法,适用于Flex3及以上版本。通过调用captureBitmapData函数即可轻松捕获指定控件的画面。
前几天我写了一篇文章叫做“Flex画面快照截图及显示”,在里面介绍了对Flex程序的运行界面进行截图快照。今天我介绍Flex中另外一种截图方式,这种方式更为简单。其方法是使用Flex中自带的ImageSnapshot类来实现。但是这种方式仅限于Flex3以及更高版本,在Flex2种,是没有这个类的。
一.ImageSnapshot类说明
这个类位于mx.graphics包中,提供了一个非常实用的静态函数captureBitmapData函数
这个函数的第一个参数为source:IBitmapDrawable 也就是说,所有可视控件都可以作为这个函数的参数。其他参数都有默认值,如果需要的话可以进行设置。返回值是BitmapData类型的。可以直接获得作为参数传入的控件的截图。
二.ImageSnapshot的使用例子。
下面是一个ImageSnapshot类直接调用captureBitmapData函数获得画面截图的使用例子。
<?xml version="1.0" encoding="utf-8"?>  
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute">
<mx:Script>
<!--[CDATA[
import mx.graphics.ImageSnapshot;
private function test():void
{
var bmp:BitmapData = ImageSnapshot.captureBitmapData(panel);
img.source = new Bitmap(bmp);
}
]]-->
</mx:Script>
<mx:Image id="img" x="73" y="260" width="531" height="220"/>
<mx:Button x="73" y="488" label="截图" click="test()"/>
<mx:Panel id="panel" x="73" y="34" width="456" height="218" layout="absolute">
<mx:DataGrid id="dg" x="10" y="10">
<mx:columns>
<mx:DataGridColumn headerText="Column 1" dataField="col1"/>
<mx:DataGridColumn headerText="Column 2" dataField="col2"/>
<mx:DataGridColumn headerText="Column 3" dataField="col3"/>
</mx:columns>
</mx:DataGrid>
</mx:Panel>
</mx:Application>



本文来自优快云博客,转载请标明出处:http://blog.youkuaiyun.com/To9m/archive/2009/11/03/4764203.aspx
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值