标记障碍物¶
geoserver实现了一种解决标签冲突的算法,以防止标签相互重叠。默认情况下,该算法只考虑与其他标签的冲突。这可能导致标签与其他符号重叠,从而产生不希望看到的效果。


geoserver支持名为 labelObstacle
允许将符号标记为障碍物。这会告诉贴标机避免渲染重叠的标签。
警告
当心将线条或多边形符号标记为标签障碍。标签冲突解决例程基于边界框,因此标记为标签障碍将不会导致标签不仅重叠几何体本身,也不会导致其边界框重叠。
<?xml version="1.0" encoding="ISO-8859-1"?>
<StyledLayerDescriptor version="1.0.0" xmlns="http://www.opengis.net/sld" xmlns:ogc="http://www.opengis.net/ogc"
xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<NamedLayer>
<UserStyle>
<FeatureTypeStyle>
<Rule>
<PointSymbolizer>
<Graphic>
<ExternalGraphic>
<OnlineResource
xlink:type="simple"
xlink:href="smileyface.png" />
<Format>image/png</Format>
</ExternalGraphic>
<Size>32</Size>
</Graphic>
<VendorOption name="labelObstacle">true</VendorOption>
</PointSymbolizer>
</Rule>
</FeatureTypeStyle>
</UserStyle>
</NamedLayer>
</StyledLayerDescriptor>


将障碍物应用于常规点样式:
<PointSymbolizer>
<Graphic>
<ExternalGraphic>
<OnlineResource
xlink:type="simple"
xlink:href="smileyface.png" />
<Format>image/png</Format>
</ExternalGraphic>
<Size>32</Size>
</Graphic>
<VendorOption name="labelObstacle">true</VendorOption>
</PointSymbolizer>


将障碍应用于线/面样式:




Previous: 以地面单位指定符号大小
Next: 在图形填充周围添加空间