Geoserver SLD:
<sld:LineSymbolizer>
<sld:Stroke>
<sld:CssParameter name="stroke">
<ogc:PropertyName>geo_color</ogc:PropertyName>
</sld:CssParameter>
<sld:CssParameter name="stroke-width">2</sld:CssParameter>
</sld:Stroke>
</sld:LineSymbolizer>
<TextSymbolizer>
<Label>
<ogc:Literal>≻</ogc:Literal>
</Label>
<Font>
<CssParameter name="font-family">Lucida Sans</CssParameter>
<CssParameter name="font-size">20</CssParameter>
</Font>
<LabelPlacement>
<LinePlacement>
<PerpendicularOffset>0</PerpendicularOffset>
</LinePlacement>
</LabelPlacement>
<Fill>
<CssParameter name="fill">
<ogc:PropertyName>geo_color</ogc:PropertyName>
</CssParameter>
</Fill>
<VendorOption name="followLine">true</VendorOption>
<VendorOption name="forceLeftToRight">false</VendorOption>
<VendorOption name="conflictResolution">false</VendorOption>
</TextSymbolizer>
I have the above style set for a WMS layer containing line strings. For most zoom levels the direction arrow aligns properly with its corresponding line. But on zooming out beyond a point, the arrows seem to be displaced away from their respective lines. Shown here:
I am fairly sure that this has to do something with VendorOption
parameters but unable to put a finger on it.