Japp, detta är i mitt tycke den största nyheten som direkt påverkar användaren med QGIS 3.0 (så här långt). Det innebär även en massa fördelar för framtiden.
Men först lite om nyheter som rör ”annotationer”.
Annotationer handlar om att anpassa texter i kartan så att de passar in så bra som möjligt tillsammans med annan information. När man väljer att visa etiketter så finns det regler man kan påverka för hur dessa ritas ut, men när man börjar kika på detaljer så finns det alltid saker man skulle vilja ändra på.
Redan nu så går det att skapa anpassningar för etiketter genom de datadefinierade åsidosättningarna, så länge man lägger till fält i attributtabellen som hanterar detta. I många fall så vill man dock inte ändra källdata, exempelvis i en gemensam geodatabas. Då har den enda möjligheten varit att kopiera data lokalt och lägga till fälten. Det har funnits några insticksprogram för detta också, men dessa har byggt på minneslager och urklipningar av lager, som lagras lokalt.
När man använder QGIS 2.99 så är alla dessa verktyg för att anpassa individuella etiketter aktiverade, utan att man gjort några som helst förändringar av attributtabellen.
Det finns en liten regel som måste vara uppfylld för att det skall fungera. Nämligen att det i det lager som etiketterna tillhör finns ett unikt identifierande fält som man kan koppla redigeringarna till.
Efter detta så kan man däremot göra alla tänkbara individuella anpassningar av texter i kartan. Inte bara flytta och rotera dem, utan varje enskild text kan anpassas på i princip alla sätt som etiketter kan justeras som lager eller i grupp.
Vad är då hemligheten?
Jo alla justeringar av denna typ sparas i en separat spatialitedatabas, därav behovet av ett unikt identifierande fält, så att kopplingen mellan lager och databas kan göras.
Databasen kopplas till projektfilen i en fil med samma namn, fast med filändelsen *.qgd. Så länge det finns en qgd-fil med samma namn, sparad på samma plats, som projektfilen så kommer QGIS att använda den för justeringar av texter enligt ovan. Annotationerna kopplas därmed till projektet och inte till geodata.
Då kommer vi till det som är den egentliga nyheten. Det är nämligen inte att det finns en qgd-fil med etikettanpassningar.
Nej, det går från och med QGIS 3 att spara projekt i qgz-format. Detta är inget annat än en komprimerad fil där qgs-filen ingår, tillsammans med resurser som exempelvis qgd-filer. Qgz är inte standardalternativet, men det går att välja detta filformat när man sparar projektet.
Jag säger ”exempelvis” qgd-filer, då det potentiellt går att distribuera mängder av data i denna fil, och då inte enbart geodata. Varför inte ett typsnitt, en svg-logo, ett pythonskript… Möjligheterna är många.
Vad som kommer att vara möjligt att skicka med får vi se på sikt, men det här kommer att vara väldigt användbart för väldigt många!
En bonuseffekt är att även qgs-filen komprimeras, vilket reducerar filstorleken enormt när den sparas.
Qgz-filen behöver sedan inte packas upp för att läsas, utan den kan öppnas som vilken annan projektfil som helst.
Så här långt så tycker jag att detta är, åtminstone en av de viktigaste nyheterna i QGIS 3. Vad tycker du?