刚刚已经解决了MovieClip缩略图问题,下面是我的截图:
下面红色部分是我实现缩略图的修改和添加的关键代码。
修改Pages.mxml
修改添加:
private function createPages(event:Event):void
{
var mc:MovieClip=Application.application.libMC;
for (var i:int=1; i <= mc.totalFrames; i++)
{
box=new Page();
mc.gotoAndStop(i);
var bitImage:BitmapData=new BitmapData(mc.width, mc.height);
var m:Matrix=new Matrix();
bitImage.draw(mc, m);
//这里很关键,要将BitmapData转成Bitmap对象才能绑定到Image控件
var myMap:Bitmap=new Bitmap(bitImage);
box.mapData=myMap;
box.pageNumber=i;
addChild(box);
box.addEventListener(MouseEvent.CLICK, dispatchPage);
}
//退回到第一帧
mc.gotoAndStop(1);
}
修改page.mxml
增加:
[Bindable]private var myMap:Bitmap;
public function set mapData(value:Bitmap):void {
myMap = value;
}
<mx:Image id="clipImage" source="{myMap}" width="100%" height="100%" horizontalAlign="center" verticalAlign="middle"/>
在我的实现MovieClip截图,主要参考的网上资料,在此与网友分享,同时,在此感谢文章作者们的工作。
参考资料:
Flex截图:http://fykyx521.javaeye.com/blog/432113
flex保存Canvas中类容为图片上传到j2ee服务器:http://hi.baidu.com/onlylamplight/blog/item/e9b5534511611288b2b7dcae.html
Flex中利用ByteArray与BitmapData互相转换实现图片的二进制保存与复原:http://hjy2099.javaeye.com/blog/260329
ActionScript 3 Jpeg Encoder Revealed: Saving Images from Flash:http://designreviver.com/tutorials/actionscript-3-jpeg-encoder-revealed-saving-images-from-flash/