Seuraa

SLD:n tuottaminen - miten polygonin reunaviivalle tekstitystä?

Jos polygonin reunaviivaa pitkin haluaa tuottaa tekstityksen, pitää GeoServerille kertoa, että tesktitys halutaan seuraavan reunaa eikä niin, että tekstitys tulee polygonin päälle.  

Tässä esimerkissä piste-viiva reunuksen lisäksi on tuotettu Natura-aluerajausaineiston "SuojeluPer" kentän ominaisuustiedoista tekstitys, joka seuraa polygonin reunaa.

Annetaan ensin alueelle reunaviivaksi musta piste-viiva -symboli:

<LineSymbolizer>

<Stroke>

<CssParameter name="stroke">#000000</CssParameter>
<CssParameter name="stroke-width">1</CssParameter>
<CssParameter name="stroke-dasharray">10 2 1 2</CssParameter>

</Stroke>

</LineSymbolizer>

Listätään alueille tekstitys valkoisella halo-efektillä siten, että teksti seuraa reunaviivaa

<TextSymbolizer>

<Geometry>
<ogc:Function name="boundary">
<ogc:PropertyName>the_geom</ogc:PropertyName>
</ogc:Function>
</Geometry>

<Label>
<ogc:PropertyName>SuojeluPer</ogc:PropertyName>
</Label>

<Font>
<CssParameter name="font-family">Arial</CssParameter>
<CssParameter name="font-size">12</CssParameter>
<CssParameter name="font-style">normal</CssParameter>
<CssParameter name="font-weight">bold</CssParameter>
</Font>

<Halo>
<Radius>3</Radius>
<Fill>
<CssParameter name="fill">#FFFFFF</CssParameter>
</Fill>
</Halo> 

<VendorOption name="followLine">true</VendorOption>
<VendorOption name="repeat">150</VendorOption>
<VendorOption name="maxAngleDelta">45</VendorOption> 

</TextSymbolizer>

 

Oliko tämä artikkeli hyödyllinen?
0/0 koki tästä olevan apua
Lisäkysymyksiä? Lähetä pyyntö

Kommentit