原文轉自:http://blog.csdn.net/yu624774720hua/article/details/6572797
主要配置文件
對於Flex應用ArcGIS的瀏覽器有一個主配置文件名爲config.xml - 這是默認的應用程序配置文件。它控制的外觀,功能,在查看器應用程序和數據內容。它位於主flexviewer安裝文件夾。 config.xml的內容可分爲四個主要部分:
- 一般特性(例如,應用程序的標題,樣式顏色,字體)
- 應用程序用戶界面(例如,部件構成部分瀏覽器UI)
- 地圖內容(如底圖和業務層)
- 構件容器(例如,在部件托盤部件)
當Flex應用程序ArcGIS的瀏覽器最初部署,它加載的config.xml文件中設置。通過編輯這個文件,查看器應用程序可以很容易地配置,以滿足任何特定的業務需求。其他樣品查看器配置文件中包含的主要flexviewer文件夾以顯示不同的瀏覽器配置的例子。
下圖從概念上說明了瀏覽器的應用程序配置文件中的主要部分:
該文件開始和結束以<configuration> 標籤標識作爲該查看器應用程序配置文件中。
1。一般瀏覽器屬性:
下面的標籤可以用來設置瀏覽器的一般屬性:
<httpproxy>到代理服務器,將用於URL
標籤有其屬性useproxy =“true”,以及小部件,支持在它們的配置文件將useProxy標籤(DataExtract,GeoRSS,定位和查詢部件)。閱讀關於使用代理頁面
<title> 該查看器應用程序的標題文字顯示在瀏覽器上的左上角。
<subtitle> 該瀏覽器的字幕文本
<logo> 位置路徑標識圖像在瀏覽器的用戶界面顯示。這是顯示在標題立即離開。圖像應不超過48 × 48像素的,否則將被調整到該大小。 PNG和GIF文件的支持。
<style>包含以下樣式相關設置:
<colors>顏色集定義了瀏覽器的外觀。這個標籤有五個價值觀,它們代表(從左至右):文字顏色,背景顏色,過渡色,選擇顏色,標題文字的顏色。顏色值是基於RGB十六進制格式。例如有些瀏覽器風格的顏色顯示在查看器主題設置樣式。
<alpha>爲瀏覽器UI組件的透明程度。值的範圍從0.0(透明)到1.0(不透明)。
<font>主要字體用在應用程序(包括字幕)。它有兩個屬性:
name:標題的字體名稱,如漫畫SANS MS
size :字體大小,例如,12。爲日文字符例如,一個更大的字體大小是很有幫助的。
<titlefont>字體用於在頭控制器稱號。它有兩個屬性:
name:標題的字體名稱,如漫畫SANS MS
size :28的字體大小。如果去掉字幕,有一個更大的字體大小,如36的空間。
<geometryservice>一般幾何服務要使用的一些部件,當重疊是真實的。
它有以下屬性:
url :URL你的幾何服務
token:訪問ArcGIS Server服務安全使用。
useproxy:是否使用代理與否。如果屬實,將使用指定的代理頁 。布爾值,默認爲“false”。
<splashpage>這引用了一個閃屏顯示查看器應用程序時,第一次打開。
它有以下屬性:
label:名稱爲splashpage使用的部件。
config:位置路徑的初始頁面部件的配置文件。
url:URL的初始頁面Widget的.swf文件
<bing>如果使用地圖或地理編碼,您需要提供自己的密鑰Bing地圖。它有一個屬性:
key:your bing key. Required.
下面是一個config.xml文件及其一般屬性的子集:
<configuration>
<title>ArcGIS Viewer for Flex</title>
<subtitle>... using ArcGIS</subtitle>
<logo>assets/images/logo.png</logo>
<mce:style><!--
<colors>0xFFFFFF,0x333333,0x101010,0x000000,0xFFD700</colors>
<alpha>0.8</alpha>
--></mce:style><style mce_bogus="1"> <colors>0xFFFFFF,0x333333,0x101010,0x000000,0xFFD700</colors>
<alpha>0.8</alpha>
</style>
<bing key="your-bing-key"/>
...
</configuration>
2. UI elements:
這些都是獨立的部件(即,外構件的容器內),通常的形式查看器應用程序的佈局/ UI的一部分。這些部件包括查看器應用程序的控制。四小部件表單的默認瀏覽器的用戶界面:導航部件(Navigation widget),部件概述地圖(Overview Map widget),地圖切換器構件 Map Switcher widget,HeaderController部件。
<widget>- 獨立這裏定義的標籤對每個部件,構成了瀏覽器的用戶界面。見它的屬性信息控件標記的話題。也見以下爲管理部件。
<!-- UI elements -->
<widget left="10" top="50" config="widgets/Navigation/NavigationWidget.xml" url="widgets/Navigation/NavigationWidget.swf"/>
<widget right="-2" bottom="-2" config="widgets/OverviewMap/OverviewMapWidget.xml" url="widgets/OverviewMap/OverviewMapWidget.swf"/>
<widget right="20" top="55" config="widgets/MapSwitcher/MapSwitcherWidget.xml" url="widgets/MapSwitcher/MapSwitcherWidget.swf"/>
<widget left="0" top="0" config="widgets/HeaderController/HeaderControllerWidget.xml" url="widgets/HeaderController/HeaderControllerWidget.swf"/>
3. Map content:
這種查看器應用程序配置文件的部分定義了瀏覽器的地圖內容。它開始和結束以 標籤,它可以有三個子標籤: <basemaps>, <operationallayers> 和 <lods>
地圖的內容可以定義兩種方法之一:
- 通過expliciting數據層定義在配置文件(例如,底圖和業務層)
- 通過訪問,從ArcGIS.com發佈的Web地圖(見ITEMID屬性如下)
<map>-定義中的地圖查看器組件。
它有(其中沒有一個是必需的)以下屬性:
initialextent - 初始地圖的空間範圍。在最小X,Y和最大x定義,Y座標應用程序的空間參考。應用程序的空間參考是您的第一個基礎層空間參考,或wkid / WKT,如果它們的定義。例如,平鋪在ArcGIS在線服務,大部分是在WGS 1984網絡輔助的球墨卡託投影(wkid#102100)。座標值可使用的範圍內輔助應用程序。如果沒有指定,初始範圍將默認爲第一個基地地圖的初始程度。
fullextent - 這個屬性是使用導航控件進行放大,以“最大的空間範圍”的地圖。語法是爲initalextent相同。如果這個屬性沒有設置,應用程序的完整程度將是初步的程度。
center - 地圖的初始中心點。
level-最初的水平,打開地圖時。該級別的地圖上的檢測限而定。
scale - 地圖的初始規模。
top - 在從以應用程序的頂部邊緣地圖上邊緣像素的垂直距離。默認爲0個像素,而40是最好的做法時使用HeaderController部件,因爲它通常涵蓋前40像素。
bottom - 在從以應用程序的底部邊緣圖的底部邊緣像素的垂直距離。默認爲0像素。
left - 在從申請到左邊緣圖左邊緣像素的水平距離。默認爲0像素。
right - 在從到應用程序的右邊緣的像素圖的右邊緣的水平距離。默認爲0像素。
itemid - 指的是從ArcGIS.com網站地圖項目的ID。該瀏覽器可以訪問和查看ArcGIS.com發佈的Web地圖,爲更多的信息,請參閱有關ArcGIS.com網站地圖。
esrilogovisible - 確定是否顯示在應用ESRI的標誌。布爾值,默認爲“true”。
openhandcursorvisible - 確定是否使用在應用程序中打開手形光標。布爾值,默認爲“false”爲版本2.3。 Prevously默認的是“true”。
paneasingfactor - 調整後的地圖平移“寬鬆”。有效值介於0和1。值1關閉緩和。如果沒有設置,默認爲0.2。見API的更多細節Map.panEasingFactor參考。 [2.3版本新增]
scalebarvisible - 確定是否顯示在應用程序中比例尺。布爾值,默認爲“true”。
zoomslidervisible - 決定是否要顯示在應用程序映射縮放滑塊。布爾值,默認爲“假”,因爲導航部件是在默認瀏覽器顯示出來。
wkid-衆所周知ID,指的是空間參考地圖的ID號。如果兩個WKT和wkid指定,wkid將被使用。
wkt - 衆所周知的文本,是指地圖的空間參考文本。要求所有ArcGIS服務器是10.0或以上。
wraparound180 - 是否啓用連續跨越日界線平移。默認爲“false”。
<map
initialextent="-13046840 4036096 -13045400 4036867"
fullextent="-16677000 2009000 -4819000 8330000"
top="40">
<basemaps>- 地圖服務列表用作在瀏覽器的基礎地圖。只有一個基礎地圖可以看得見的時間,但一個基本的地圖可以包含多個圖層。要創建混合底圖,設置name屬性要對所有在底圖圖層組,應該彌補混合底圖相同。當多個地圖服務中列出了 ,地圖切換部件可以被用來使最終用戶能夠在它們之間切換。 有一個子標籤,可重複多次:
<layer> - 這是一個地圖服務,在瀏覽器顯示的層。見它的屬性信息層標籤的話題。
<operationallayers>- 列出的地圖是在瀏覽器中的基礎地圖數據之上疊加服務。業務層可以訪問無論從地圖切換部件,更多...按鈕和圖層列表小部件。 有一個子標籤,可重複多次:
<layer> - 這是一個地圖服務,在瀏覽器顯示的層。見它的屬性信息層標籤的話題。
<lods>- 細節(檢測限),或設置規模級別。默認情況下,可用的水平是按照您的底圖。爲了改變這一狀況,指定您自己的一套的水平。對於預創建磚層,這些必須完全匹配的水平。 有一個子標籤這反過來有兩個屬性:分辨率和規模。
<map>
<lods><!-- only show a few levels -->
<lod resolution="78271.5169639999" scale="295828763.795777"/>
<lod resolution="9783.93962049996" scale="36978595.474472"/>
<lod resolution="1222.99245256249" scale="4622324.434309"/>
<lod resolution="152.874056570411" scale="577790.554289"/>
</lods>
...
</map>
下面是config.xml文件的瀏覽器的地圖內容的代碼示例:
<map initialextent="8044000 1489000 15226000 7271000" top="40"
wraparound180="true">
<basemaps>
<layer label="街道圖" type="tiled" visible="true"
url="http://server.arcgisonline.com/ArcGIS/rest/services/World_Street_Map/MapServer" />
<layer label="航空圖" type="tiled" visible="false"
url="http://server.arcgisonline.com/ArcGIS/rest/services/World_Imagery/MapServer" />
<layer label="地形圖" type="tiled" visible="false"
url="http://server.arcgisonline.com/ArcGIS/rest/services/World_Topo_Map/MapServer" />
</basemaps>
<operationallayers>
<layer label="邊界和地點" type="tiled" visible="false"
url="http://server.arcgisonline.com/ArcGIS/rest/services/Reference/World_Boundaries_and_Places_Alternate/MapServer" />
<layer label="火災" type="feature" visible="false"
popupconfig="popups/PopUp_Fires.xml"
url="http://sampleserver3.arcgisonline.com/ArcGIS/rest/services/Fire/Sheep/FeatureServer/0" />
<layer label="舊金山 311 服務電話事件點" type="feature" visible="false"
popupconfig="popups/PopUp_311.xml"
url="http://sampleserver3.arcgisonline.com/ArcGIS/rest/services/SanFrancisco/311Incidents/FeatureServer/0" />
<layer label="地震" type="dynamic" visible="false"
url="http://sampleserver3.arcgisonline.com/ArcGIS/rest/services/Earthquakes/Since_1970/MapServer" />
</operationallayers>
</map>
4. Widget container:
一個widget容器是一個概念結構,是不是直接在瀏覽器的用戶界面可見。它可以進行分組管理的目的一起在瀏覽器的部件。在容器中的小部件一個部件中引用部件托盤。部件最終用戶可以輕鬆地在瀏覽器打開/關閉,通常存儲在一個小部件的容器。見它的屬性信息Widgetcontainer標籤的話題。
<widgetcontainer> - 定義爲查看器應用程序部件的容器。一位觀衆可以有多個部件的容器。當子標籤來標記 ,小部件存儲在構件容器,它們將出現在widget托盤。
在config.xml文件中的代碼示例所示,書籤和查找地址部件都存儲在一個小部件容器:
<widgetcontainer layout="float"> <!--horizontal(default)|float|vertical|fix-->
<widget label="書籤" icon="assets/images/i_bookmark.png" config="apps/zh_CN/BookmarkWidget.xml"
url="widgets/Bookmark/BookmarkWidget.swf" />
<widget label="繪製和測量" icon="assets/images/i_draw2.png" config="widgets/Draw/DrawWidget.xml"
url="widgets/Draw/DrawWidget.swf" />
<widget label="地震點" icon="assets/images/i_rss.png" config="widgets/GeoRSS/GeoRSSWidget.xml"
url="widgets/GeoRSS/GeoRSSWidget.swf" />
<widget label="打印" icon="assets/images/i_print.png" config="widgets/Print/PrintWidget.xml"
url="widgets/Print/PrintWidget.swf" />
<widget label="交通監控攝像機" icon="assets/images/i_camera.png"
config="widgets/Query/QueryWidget_Louisville_TrafficCams.xml" url="widgets/Query/QueryWidget.swf" />
<widget label="路易斯維爾警察局" icon="assets/images/i_policestation.png"
config="widgets/Query/QueryWidget_Louisville_PoliceStations.xml" url="widgets/Query/QueryWidget.swf" />
<widget label="搜索" icon="assets/images/i_search.png"
config="widgets/Search/SearchWidget_Louisville.xml" url="widgets/Search/SearchWidget.swf" />
<widgetgroup label="更多微件(widget)">
<widget label="查找歐洲地址" icon="assets/images/i_pin2.png"
config="widgets/Locate/LocateWidget_EU.xml" url="widgets/Locate/LocateWidget.swf" />
<widget label="查找世界地址" icon="assets/images/i_flag.png"
config="widgets/Locate/LocateWidget_WorldGaz.xml" url="widgets/Locate/LocateWidget.swf" />
<widget label="使用 Bing 查找地址" icon="assets/images/i_target.png"
config="widgets/Locate/LocateWidget_Bing.xml" url="widgets/Locate/LocateWidget.swf" />
<widget label="數據提取" icon="assets/images/i_scissors.png"
config="widgets/DataExtract/DataExtractWidget.xml" url="widgets/DataExtract/DataExtractWidget.swf" />
<widget label="圖層列表" icon="assets/images/i_layers.png"
config="widgets/LayerList/LayerListWidget.xml" url="widgets/LayerList/LayerListWidget.swf" />
<widget label="按時間過濾" icon="assets/images/i_clock.png"
config="widgets/Time/TimeWidget_QuakesSince1970.xml" url="widgets/Time/TimeWidget.swf" />
</widgetgroup>
</widgetcontainer>