ArcGIS For Server10.1新特性之-服务器端打印服务及前端调用

ArcGIS For Server10.1新特性之一就是服务器端打印,这个打印功能使用起来非常的方便,因为它是一个现成的GP服务,使用的时候只要输入相应的地图,地图范围,模板的名称等,就可以按需打印出你需要的地图。下面我们来看一下从制作模版到发布服务及服务调用的整个流程吧:

1、自己定义一个打印模板,如下图是布局视图:

ArcGIS For Server10.1新特性之-服务器端打印服务及前端调用

将模版保存到C:\Program Files (x86)\ArcGIS\Desktop10.1\Templates\ExportWebMapTemplates(当然你也可以保存到其他路径下,在发布服务的时候你可以指定你自己的路径)

2、在ArcToolBox中打开Export Web Map工具:

ArcGIS For Server10.1新特性之-服务器端打印服务及前端调用

输入参数:Web Map as JSON为空;Output File为默认参数;Format可以自己输入;Layout Templates Folder(optional)选择一个模板文件夹(这里选择ArcGIS安装目录的模板文件夹),然后Layout  Templates (optional)就可以选择一个默认的模板了

ArcGIS For Server10.1新特性之-服务器端打印服务及前端调用

点击OK,打开菜单栏Geoprocessing/Results,执行完成后选中Export Web Map右键Share as Geoprocessing services

ArcGIS For Server10.1新特性之-服务器端打印服务及前端调用

ArcGIS For Server10.1新特性之-服务器端打印服务及前端调用

下一步、下一步:Analyse后如果没有错误,直接点击Publish发布:

ArcGIS For Server10.1新特性之-服务器端打印服务及前端调用

ArcCatalog中查看如下:

ArcGIS For Server10.1新特性之-服务器端打印服务及前端调用

3、服务发布好后,可一下在Flex中如何调用一把:ArcGIS Flex API3.0也增加了对该打印服务的支持:

ArcGIS For Server10.1新特性之-服务器端打印服务及前端调用

ArcGIS For Server10.1新特性之-服务器端打印服务及前端调用

代码如下:print.mxml

<?xml version="1.0" encoding="utf-8"?> <s:Application xmlns:fx="" xmlns:s="library://ns.adobe.com/flex/spark" xmlns:esri="" xmlns:mx="library://ns.adobe.com/flex/mx" minWidth="955" minHeight="600"> <fx:Declarations> <!-- 将非可视元素(例如服务、值对象)放在此处 --> </fx:Declarations> <fx:Script> <![CDATA[ import mx.managers.PopUpManager; private function onclick(event:MouseEvent):void { var popWin:printForm = printForm(PopUpManager.createPopUp(this,printForm,false)); popWin.printTask.getServiceInfo();//调用 打印 GP,获取模版和格式参数 popWin.map = this.myMap; } ]]> </fx:Script> <esri:Map id="myMap"> <esri:ArcGISDynamicMapServiceLayer url=":6080/arcgis/rest/services/routTest2/MapServer"/> </esri:Map> <mx:Button id="button" x="409" y="10" label="打印" click="onclick(event)"/> </s:Application>

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/zwzpjd.html