geoserver 关于点样式的解决方案
目前做一个工程,希望数据库的1个点在地图中呈现许多属性,需要点根据数据库的坐标做点的偏移处理,查过很多资料,不知道点样式到底能不能实现偏移。 以下是一段 文字标签的偏移代码,既然文字可以做到便宜,我想点也可以吧? 请高手指教<TextSymbolizer>
<Label>
<ogc:PropertyName>NAME</ogc:PropertyName>
</Label>
<Font>
<CssParameter name="font-size">
<ogc:Literal>12.0</ogc:Literal>
</CssParameter>
<CssParameter name="font-style">
<ogc:Literal>normal</ogc:Literal>
</CssParameter>
<CssParameter name="font-weight">
<ogc:Literal>normal</ogc:Literal>
</CssParameter>
</Font>
<LabelPlacement>
<PointPlacement>
<AnchorPoint>
<AnchorPointX>
<ogc:Literal>0.0</ogc:Literal>
</AnchorPointX>
<AnchorPointY>
<ogc:Literal>0.0</ogc:Literal>
</AnchorPointY>
</AnchorPoint>
<Displacement>
<DisplacementX>
<ogc:Literal>0</ogc:Literal>
</DisplacementX>
<DisplacementY>
<ogc:Literal>0</ogc:Literal>
</DisplacementY>
</Displacement>
<Rotation>
<ogc:Literal>0.0</ogc:Literal>
</Rotation>
</PointPlacement>
</LabelPlacement>
<Fill>
<CssParameter name="fill">
<ogc:Literal>#000000</ogc:Literal>
</CssParameter>
<CssParameter name="fill-opacity">
<ogc:Literal>1.0</ogc:Literal>
</CssParameter>
</Fill>
<VendorOption name="spaceAround">2</VendorOption>
</TextSymbolizer>
--------------------编程问答-------------------- 是ASP.NET的啊,帮顶了。 --------------------编程问答-------------------- 是geoserver里的 样式文件(*.sld),我没接触过asp.net 莫非他们之间很像? --------------------编程问答-------------------- 楼主贴的这段不像ASP的东西 倒是很像XML 因为不熟悉你说的GeoServer所以不太明白你要实现的效果确切的怎么实现
但是你贴的这段只要稍微改动一下就可以改动成XML 我想你去看一下XML一些基本的定义
应该能明白这段文字的意思 然后再在明白这段文字的意义的基础上改动。下面是我对这段文字的理解(仅供参考)。
改动后得到的XML如下:(主要是把ogc:Literal这样的表述改成了ogc_Literal)
[code=XML<?xml version='1.0' encoding='ISO-8859-1' ?>
<TextSymbolizer> <!--根定义-->
<Label>
<ogc_PropertyName>NAME</ogc_PropertyName> <!--名称-->
</Label>
<Font><!--字体-->
<CssParameter name="font-size"> <!--字体大小-->
<ogc_Literal>12.0 </ogc_Literal>
</CssParameter>
<CssParameter name="font-style"> <!--字体名称-->
<ogc_Literal>normal </ogc_Literal>
</CssParameter>
<CssParameter name="font-weight"> <!--字体粗细-->
<ogc_Literal>normal </ogc_Literal>
</CssParameter>
</Font>
<LabelPlacement> <!--标注位置信息 >> 我想楼主要实现的偏移主要是这个属性下的内容改动-->
<!--一个标注应该由下面的锚点和显示位置来确定,锚点估计应该指的是标注要表示的物易做图置-->
<!--而显示位置则表示的是文本要显示在哪里,如果锚点为(0,0);显示点位(2,2)则说明标注-->
<!--相对于要标注的物体产生了X轴2 Y轴2的偏移-->
<PointPlacement>
<AnchorPoint> <!--锚点位置?-->
<AnchorPointX> <!--锚点X坐标?-->
<ogc_Literal>0.0</ogc_Literal>
</AnchorPointX>
<AnchorPointY> <!--锚点Y坐标?-->
<ogc_Literal>0.0</ogc_Literal>
</AnchorPointY>
</AnchorPoint>
<Displacement> <!--标注显示位置?-->
<DisplacementX> <!--标注显示的X坐标?-->
<ogc_Literal>0</ogc_Literal>
</DisplacementX>
<DisplacementY> <!--标注显示的X坐标?-->
<ogc_Literal>0</ogc_Literal>
</DisplacementY>
</Displacement>
<Rotation> <!--标注旋转属性-->
<ogc_Literal>0.0</ogc_Literal>
</Rotation>
</PointPlacement>
</LabelPlacement>
<Fill> <!--填充-->
<CssParameter name="fill"> <!--填充颜色值?-->
<ogc_Literal>#000000 </ogc_Literal>
</CssParameter>
<CssParameter name="fill-opacity"> <!--填充饱和度??-->
<ogc_Literal>1.0</ogc_Literal>
</CssParameter>
</Fill>
<VendorOption name="spaceAround">2</VendorOption>
</TextSymbolizer>[/code] --------------------编程问答-------------------- 改动后得到的XML如下:(主要是把ogc:Literal这样的表述改成了ogc_Literal)
<?xml version='1.0' encoding='ISO-8859-1' ?>
<TextSymbolizer> <!--根定义-->
<Label>
<ogc_PropertyName>NAME </ogc_PropertyName> <!--名称-->
</Label>
<Font> <!--字体-->
<CssParameter name="font-size"> <!--字体大小-->
<ogc_Literal>12.0 </ogc_Literal>
</CssParameter>
<CssParameter name="font-style"> <!--字体名称-->
<ogc_Literal>normal </ogc_Literal>
</CssParameter>
<CssParameter name="font-weight"> <!--字体粗细-->
<ogc_Literal>normal </ogc_Literal>
</CssParameter>
</Font>
<LabelPlacement> <!--标注位置信息 >> 我想楼主要实现的偏移主要是这个属性下的内容改动-->
<!--一个标注应该由下面的锚点和显示位置来确定,锚点估计应该指的是标注要表示的物易做图置-->
<!--而显示位置则表示的是文本要显示在哪里,如果锚点为(0,0);显示点位(2,2)则说明标注-->
<!--相对于要标注的物体产生了X轴2 Y轴2的偏移-->
<PointPlacement>
<AnchorPoint> <!--锚点位置?-->
<AnchorPointX> <!--锚点X坐标?-->
<ogc_Literal>0.0 </ogc_Literal>
</AnchorPointX>
<AnchorPointY> <!--锚点Y坐标?-->
<ogc_Literal>0.0 </ogc_Literal>
</AnchorPointY>
</AnchorPoint>
<Displacement> <!--标注显示位置?-->
<DisplacementX> <!--标注显示的X坐标?-->
<ogc_Literal>0 </ogc_Literal>
</DisplacementX>
<DisplacementY> <!--标注显示的X坐标?-->
<ogc_Literal>0 </ogc_Literal>
</DisplacementY>
</Displacement>
<Rotation> <!--标注旋转属性-->
<ogc_Literal>0.0 </ogc_Literal>
</Rotation>
</PointPlacement>
</LabelPlacement>
<Fill> <!--填充-->
<CssParameter name="fill"> <!--填充颜色值?-->
<ogc_Literal>#000000 </ogc_Literal>
</CssParameter>
<CssParameter name="fill-opacity"> <!--填充饱和度??-->
<ogc_Literal>1.0 </ogc_Literal>
</CssParameter>
</Fill>
<VendorOption name="spaceAround">2 </VendorOption>
</TextSymbolizer>
补充:企业软件 , 地理信息系统