FusionMaps地图XML文档详解

最近在用FusionMaps来制作地图。FusionMaps是通过XML配置文档来设置表现形式,包括颜色,字体等。也是通过XML配置文档设置FusionMaps的一些功能。

一个标准的XML文档:

<map animation='0' showShadow='0' showBevel='0' showLabels='0' showMarkerLabels='1' fillColor='F1f1f1'borderColor='CCCCCC' baseFont='Verdana' baseFontSize='10' markerBorderColor='000000' markerBgColor='FF5904'markerRadius='6' legendPosition='bottom' useHoverColor='0' showToolTip='0' showMarkerToolTip='1' >
   <data>
      <entity id='NA' />
      <entity id='SA' />
      <entity id='EU' />
      <entity id='AS' />
      <entity id='AF' />
      <entity id='AU' />
   </data>
   <markers>
      <definition>
         <marker id='CA' x='116.65' y='94.85' label='Sales Office' labelPos='top'/>
         <marker id='US' x='131.57' y='133.22' label='Headquarters' labelPos='bottom'/>
         <marker id='CN' x='532.3' y='150.68' label='Call Center' labelPos='bottom'/>
         <marker id='BR' x='228.55' y='276.03' label='Production Center' labelPos='bottom'/>
         <marker id='AU' x='621.83' y='311.21' label='Q & A' labelPos='bottom'/>
         <marker id='RU' x='532.3' y='76.73' label='Back Office' labelPos='bottom'/>
         <marker id='IN' x='499.26' y='202.5' label='Accounts' labelPos='bottom'/>
      </definition>
      <shapes>
         <shape id='USMap' type='image' url='Resources/us_flag.jpg' labelPadding='12' />
         <shape id='CAMap' type='image' url='Resources/canada_flag.jpg' labelPadding='12' />
         <shape id='CNMap' type='image' url='Resources/china_flag.jpg' labelPadding='12' />
         <shape id='BRMap' type='image' url='Resources/brazil_flag.jpg' labelPadding='12' />
         <shape id='AUMap' type='image' url='Resources/aus_flag.jpg' labelPadding='12' />
         <shape id='RUMap' type='image' url='Resources/rus_flag.jpg' labelPadding='12' />
         <shape id='INMap' type='image' url='Resources/ind_flag.jpg' labelPadding='12' />
      </shapes>
      <application>
         <marker id='CA' shapeId='CAMap' toolText='Canada&lt;BR&gt;2 Managers&lt;BR&gt;11 Staff'/>
         <marker id='US' shapeId='USMap' toolText='United States&lt;BR&gt;CEO, CFO, 3 Managers&lt;BR&gt;26 Staff'/>
         <marker id='CN' shapeId='CNMap' toolText='China&lt;BR&gt;1 Manager&lt;BR&gt;7 Support Staff'/>
         <marker id='BR' shapeId='BRMap' toolText='Brazil&lt;BR&gt;COO, 2 Managers&lt;BR&gt;32 Factory Staff'/>
         <marker id='AU' shapeId='AUMap' toolText='Australia&lt;BR&gt;1 Manager&lt;BR&gt;(Outsourced Agency)'/>
         <marker id='RU' shapeId='RUMap' toolText='Russia&lt;BR&gt;1 Manager&lt;BR&gt;6 Staff'/>
         <marker id='IN' shapeId='INMap' toolText='India&lt;BR&gt;1 Manager&lt;BR&gt;5 Accountants'/>
      </application>
   </markers>
   <styles>
      <definition>
         <style name='TTipFont' type='font' isHTML='1' color='FFFFFF' bgColor='666666' size='11'/>
         <style name='HTMLFont' type='font' color='333333' borderColor='CCCCCC' bgColor='FFFFFF'/>
         <style name='myShadow' type='Shadow' distance='1'/>
      </definition>
      <application>
         <apply toObject='MARKERS' styles='myShadow' />
         <apply toObject='MARKERLABELS' styles='HTMLFont,myShadow' />
         <apply toObject='TOOLTIP' styles='TTipFont' />
      </application>
   </styles>
</map>

一、<map>元素的功能性属性:

Attribute Name  Type  Range  Description 
animation  Boolean  0/1  是否让地图支持动态效果,默认的动画为淡入。 设置0为否,1为是。 
showLabels  Boolean  0/1  是否显示实体的labels。 
includeNameInLabels  Boolean  0/1  是否在labels中显示实体名称。 
includeValueInLabels  Boolean  0/1  是否在labels中显示实体的值。 
useSNameInLabels  Boolean  0/1  是否在labels活实体名称中用简写来表示。 
useSNameInToolTip  Boolean  0/1  是否在提示文本中用简写来表示。 
showShadow  Boolean  0/1  是否显示地图阴影。 
showBevel  Boolean  0/1  是否显示3D地图。 
clickURL  String     整个地图可以作为一个热点,指向一个URL,链接必须符合FusionMaps的格式。 
defaultAnimation  Boolean  0/1  地图默认的是有淡入的效果。如果你想通过STYLE功能来自定义动画效果,你可以将次此值设为0。 
hoverOnEmpty  Boolean  0/1  当XML中没有设置了某个实体的值,是否让其在提示信息显示出来。 
showPrintMenuItem  Boolean  0/1  是否显示”Print Chart” 按钮。默认为1。 
exposeHoverEvent  Boolean  0/1  当鼠标移到一实体上时,是否激发Javascript事件或者Flash事件。 
showAboutMenuItem  Boolean  0/1  是否右键后显示about信息。在这里可以设置你的公司名或者链接。默认的about信息是”About FusionMaps ” 。 
aboutMenuItemLabel  String     about信息上的文本。 
aboutMenuItemLink  String  URL  about信息上的文本连接。 

二、<map>元素的外观性属性:

Attribute Name  Type  Range  Description 
showCanvasBorder  Boolean  1/0  是否显示实体的边框。 
canvasBorderColor  Color  Hex Code  实体边框的颜色。 
canvasBorderThickness  Number  In Pixels  实体边框的粗细。 
canvasBorderAlpha  Number  0-100  实体边框的透明度。 
bgColor  Color     设置整个地图的背景颜色。 
bgAlpha  Number  0-100  设置整个地图的背景透明度。 
bgRatio  Number  0-100  设置整个地图的背景颜色比率。 
bgAngle  Number  0-360  设置整个地图的背景颜色角度。 
bgSWF  String     可以用一个透明swf文件作为地图的背景。这个文件要与地图文件在同一个域中。 
bgSWFAlpha  Number  0-100  背景flash的透明度。 
logoURL  String  URL  可以加载一个logo。这个图要与地图文件在同一个域中。 
logoPosition  String  TL, TR, BL, BR, CC  Logo的位置:TL – 左上,TR – 右上,BR – 右下,BL – 左下,CC – 中间 
logoAlpha  Number  0-100  Logo的透明度。 
logoScale  Number  0-300  Logo的比例大小。 
logoLink  String  URL  Logo指向的链接。 

三、设置Map的数字格式,利用下面这些属性,可以控制以下功能: 

1、数字逗号和小数点的格式; 2、数字前缀和后缀; 3、在哪一位四舍五入; 4、在哪一个数量级进行缩放; 5、自定义输入格式。

Attribute Name  Type  Range  Description 
formatNumber  Boolean  0/1  配置是否启动数字格式。例如:当配置为1时,显示 40,000 ,配置为0时,显示 40000 。 
formatNumberScale  Boolean  0/1  配置是否将数字转化为K (千) and M (百万)。例如: 配置为1, 1043 将转化为1.04K (小数点后两位). 
defaultNumberScale  String     数字默认的单位。在数字格式高级部分有更详细的介绍。 
numberScaleUnit  String     数字的单位。在数字格式高级部分有更详细的介绍。 
numberScaleValue  String     Range of the various blocks that constitute the scale. For more details, please see Advanced Number Formatting section. 
numberPrefix  String  Character  数字前缀 
numberSuffix  String  Character  数字后缀 
decimalSeparator  String  Character  设置一个小数点分隔符。 
thousandSeparator  String  Character  设置一个千分隔符。 
inDecimalSeparator  String  Character  设置不同的分隔符。 
inThousandSeparator  String  Character  设置不同的分隔符。 
decimals  Number  0-10  小数点的位数。 

四、设置Map的字体属性:

Attribute Name  Type  Range  Description 
baseFont  String  Font Name  设置字体。 
baseFontSize  Number  0-72  字体大小。 
baseFontColor  Color     字体颜色。 

允许将地图保存为图片的属性 (在Map标签中)

Attribute Name  Type  Range  Description 
imageSave  Boolean  (0/1)  是否支持图片保存功能。 
imageSaveURL  URL     图片保存地址,应与地图文件同域。 
imageSaveDialogColor  Color     保存图片时候弹出的窗口颜色。 
imageSaveDialogFontColor  Color     保存图片时候弹出的窗口字体颜色。 

五、书签属性(在map标签中),书签用来在地图上定义一个点,用来指向一个城市,屋子或者市场等。你可以通过一下的配置项来设置书签。 

Attribute Name  Type  Range  Description 
markerFont  String  Font Name  设置书签字体,在STYLES 中可以重写。 
markerFontSize  Number  0-72  设置书签字体大小。 
markerFontColor  Color     设置书签字体颜色。 
showMarkerToolTip  Boolean  0/1  是否显示提示书签的提示信息。 
showMarkerLabels  Boolean  0/1  是否显示书签的信息。 
markerLabelPadding  Number  Pixels  设置书签信息和图标之间的距离。也可以在后面为每个书签重写该值。 
markerBgColor  Color     书签背景颜色。 
markerBorderColor  Color     书签边框颜色。 
markerRadius  Number  Pixels  书签的半径。 
markerConnThickness  Number  Pixels  如果设置了连接线,这个属性用来设置连接线的粗细。 
markerConnColor  Color     如果设置了连接线,这个属性用来设置连接线的颜色。 
markerConnAlpha  Number  0-100  如果设置了连接线,这个属性用来设置连接线的透明度。 
markerConnDashed  Boolean  0/1  如果设置了连接线,这个属性用来设置连接线是否为虚线。 
markerConnDashLen  Number  Pixels  如果设置了连接线为虚线,这个属性用来设置虚线的长短。 
markerConnDashGap  Number  Pixels  如果设置了连接线为虚线,这个属性用来设置虚线间的长短。 

六、提示信息(在map标签中)

Attribute Name  Type  Range  Description 
showToolTip  Boolean  0/1  是否显示提示信息。 
toolTipBgColor  Color     提示信息的背景颜色。 
toolTipBorderColor  Color     提示信息的边框颜色。 
toolTipSepChar  String     提示信息中,设置名称和值之间的分隔符。 
showToolTipShadow  Boolean  0/1  是否在提示信息中显示阴影。 

 地图的内边距和外边距(在map标签中) 

Attribute Name  Type  Range  Description 
legendPadding  Number  In Pixels  设置图例在右/下的内边距。 
mapLeftMargin  Number  In Pixels  设置地图距离左边的距离。 
mapRightMargin  Number  In Pixels  设置地图距离右边的距离。 
mapTopMargin  Number  In Pixels  设置地图距离上边的距离。 
mapBottomMargin  Number  In Pixels  设置地图距离下边的距离。 

七、图例属性(在map标签中)

如果你定义了区域范围颜色,这些颜色块会出现在图例中。你可以将颜色块放在地图的下面或右边。
当然,利用下面的属性,可以设置自定义图例。 

Attribute Name  Type  Range  Description 
showLegend  Boolean  0/1  是否显示图例。 
legendCaption  String     图例的标题 
legendPosition  String  BOTTOM or RIGHT  图例的位置,下面或右边。 
legendBgColor  Color  Hex Code  图例的背景颜色。 
legendBgAlpha  Number  0-100  图例的背景透明度。 
legendBorderColor  Color  Hex Code  图例边框颜色。 
legendBorderThickness  Number  In Pixels  图例边框粗细。 
legendBorderAlpha  Number  0-100  图例边框透明度。 
legendShadow  Boolean  0/1  是否显示图例阴影。 
legendAllowDrag  Boolean  0/1  是否允许拖动图例。 
legendScrollBgColor  Color  Hex Code  图例拉动框的背景颜色。 
legendScrollBarColor  Color  Hex Code  图例拉动框的颜色。 
legendScrollBtnColor  Color  Hex Code  图例拉动框的按钮颜色 
reverseLegend  Boolean  0/1  是否颠倒图例的顺序。 

八、<entity>实体属性(在每个单独的entity标签中)

Attribute Name  Type  Range  Description 
value  Number     实体的值。 
displayValue  String     显示信息。 
toolText  String     提示信息。 
color  Color  Hex Code  实体颜色。 
alpha  Number  0-100  透明度。 
link  String     指向的连接,可以是一个窗口,弹出窗口,框架或者是Javascript函数。在“下钻地图”中有更详细的介绍。 
font  String     字体。 
fontSize  String     字体大小。 
fontColor  Boolean  0/1  字体颜色。 
fontBold  Boolean  0/1  字体粗细。 
showLabel  Boolean  0/1 

是否显示标签信息。这个属性重写了<map>中的showLabels属性。 

原文地址:https://www.cnblogs.com/flish/p/2256265.html