I ett tidigare inlägg visade jag hur man skapar och lagrar data i en PostGIS databas. I slutet på det inlägget nämnde jag att det skulle bli ett nytt inlägg om hur man snyggar till presentationen av dessa lager lite senare. Nu har tiden kommit för detta inlägg.
Först och främst skall vi nämna att OpenGeo Suite har ett ganska bra stöd för att sätta stilar på lager i GeoServer inbyggt i gränssnittet. Under ”Layer Preview” så finns en kolumn med länken ”Styler”, genom att klicka på denna länk så kan man visuellt redigera lagren i ett nytt gränssnitt.
Lägg märke till att det går att visa Open Street Map som bakgrunds data i Styler. Här kan man ändra exempelvis fyllning, linje och symboler genom lite enklare val. Det går även att skriva ut text (s.k. ”lables” eller på svenska ”etiketter”) och sätta lite vilkor för när stilen skall visas, exempelvis beroende på zoom nivå.
Styler är ett utmärkt verktyg för att snabbt publicera data utan att det för den skull ser helt oformatterat ut. Vill man däremot göra flera anpassningar och stilar med exempelvis symboler som består av flera lager så får man välja ett annat tillvägagångssätt, men det går ju alltid att byta ut en stil mot en ny så småning om.
Stilerna beskrivs genom Styled Layer Descriptor eller SLD. Detta är ett XML format som används för att beskriva hur en symbol skall ritas ut på skärmen. Innan vi börjar titta närmare på koden så kan vi använda några andra GIS verktyg som också hanterar SLD för att beskriva symboler i kartor.
Quantum GIS brukar jag använda för geodatahantering och den nya versionen har riktigt snygg symbolhantering, men det fungerar inte att exportera till SLD. Det kan vara ett plug-in som behöver installeras, men jag lämnar QGIS för den här gången och går över till ett av mina nya favoritverktyg för det GIS jobb som jag behöver göra, nämligen uDig.
Helt perfekt är inte uDig heller, utan ganska nyckfullt ibland. Men sådant får man räkna med när man arbetar med OpenSource då utvecklingen i många fall är baserad på kommersiella företags experiment och test av kommande funktioner i kommersiella programvaror. Nåja, när man läst in PostGIS lagren, i mitt fall, så kan man redigera stilen för varje lager på ett mycket mera flexibelt sätt än med Styler i OpenGeo Suite. Exempelvis går det att lägga flera lager med symboler på varandra för att på så sätt bygga upp symboler som normalt sett inte finns. Det går även att sätta olika vilkor på olika symboler beroende på exempelvis skala och/eller attribut. Transparens och texter är heller inga problem och det går ju alltid att applicera ändringarna och titta i uDig hur det kan komma att se ut via servern senare.
När man är nöjd så exporterar man varje lager till en SLD fil. Dessa filer läser man in under ”Styles” i GeoServer. Sedan kan man välja dessa importerade stilar under ”Publishing” fliken för varje lager.
Stilen på lagret blir inte exakt som det skapades i uDig, men till del beror detta på att exempelvis typsnitt som använts inte är installerade på servern. När WMS tjänsten streamas till Google Earth så slår det mesta av stilen igenom också men där är man mer begränsad av hur Google Earth kan presentera olika typer av objekt.
OK, det går även att redigera SLD filer i exempelvis Atlas SLD Styler, och det finns säkert flera sätt. Är man ändå inte nöjd så finns det alltid Notepad eller annan textredigerare. SLD filerna är en typ av XML och går enkelt att redigera manuellt, om man vet vad man gör. Det enklaste är kanske att öppna en SLD fil man skapat och se om man kan få ett litet grepp om principerna. Sedan går det alltid att söka mer information om standarden på nätet. Detaljer om SLD får vänta till ett eventuellt framtida inlägg. Lycka till.