1,首先整理地图所需的图例为一个图片,
然后在地图加载完的事件中动态加载此图片到地图上,
然后在导出的widget页面点击时间导出地图控件。OK
?
代码实现:
comesriviewermanagersMapManager.mxml 页面creationComplete="this_creationCompleteHandler()" 内调用地图加载图例图片到地图
。。
[Embed(source="/assets/images/tuli.png")]
??private var _tuli:Class;
。。
private function this_creationCompleteHandler():void
{。。。
//图例图片加载到地图
????setTuliImg();
}
//图例图片加载到地图
???private function setTuliImg():void
???{
????var target:UIComponent=map;
????target.width= Application.application.width;
????target.height =? Application.application.height;
????var imgtuli:Image = new Image();
????imgtuli.source=_tuli;
????imgtuli.right=200;
????imgtuli.bottom=200;
????imgtuli.width=100;
????imgtuli.height=80;imgtuli.move(target.width-200,target.height-100);
????target.addChild(imgtuli);
???}
?
然后:在导出的widget页面 控件 <s:Button id="btnExport" label="出图" click="export(event)" />
private function export(event:MouseEvent):void{
????var target:UIComponent=map;
var fr:FileReference = new FileReference();
????var bitmapData : BitmapData = new BitmapData(target.width,target.height);
????bitmapData.draw(target);
????var jpgEncoder:JPEGEncoder = new JPEGEncoder(10000);
????var data:ByteArray = jpgEncoder.encode(bitmapData);
????fr.save(data,txtImgName.text+'.jpg');//图片默认名字
???}
完成