`
xylffxyfpp
  • 浏览: 113133 次
  • 性别: Icon_minigender_1
  • 来自: 上海
文章分类
社区版块
存档分类
最新评论

FLEX对整个截屏或单个UI进行截图

阅读更多
11月24日
FLEX对整个截屏或单个UI进行截图
虽然FLEX 3.0已经自带了截图的类,但是FLEX 2.0本身就可以简单的做出来截图功能,而且也是很简单的,下面粘出来给大家秀一下.

<?xml version="1.0" encoding="utf-8"?>
<mx:Application
xmlns:mx="http://www.adobe.com/2006/mxml"
layout="absolute">
<mx:Script>
  <![CDATA[
   import mx.core.UIComponent;
   private function captureFullScreen() : void     //截屏
   {
    var bd : BitmapData = getBitmapData( UIComponent( mx.core.Application.application ) );
    targetImage.source = new Bitmap( bd );
   }
   private function captureHiddenDatagrid() : void  //截单个UI
   {
    var bd : BitmapData = getBitmapData( UIComponent( hiddenDg ) );
    targetImage.source = new Bitmap( bd );
   }

   private function getBitmapData( target : UIComponent ) : BitmapData  //截图功能函数   {
    var bd : BitmapData = new BitmapData( target.width, target.height );
    var m : Matrix = new Matrix();
    bd.draw( target, m );
    return bd;
   }
  ]]>
</mx:Script>
<mx:Button
  id="captureButton"
  label="Capture Full Screen"
  click="captureFullScreen()" />
<mx:Button
  id="captureButton2"
  label="Capture Hidden Datagrid"
  click="captureHiddenDatagrid()" 
  x="153"/>
<mx:Image
  id="targetImage"
  x="10"
  y="30"/>
<mx:DataGrid
  x="99"
  y="64"
  id="hiddenDg"
  visible="false">
  <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:Application>
http://snowyrock.spaces.live.com/blog/cns!B8CBEB7169880B1D!447.entry
分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics