La nuova versione di QGIS (Girona) porta con se moltissime novità che renderanno l’esperienza dell’utente più bella, più veloce e prestante; in questo articolo parlerò del compositore di stampe che è stato riscritto, da zero, da Nyall Dawson dopo una raccolta fondi terminata a maggio del 2017.
Nel mio blog (in questo blog) ho scritto parecchi articoli sul compositore di stampe e sugli atlanti ma non ho mai trattato l’argomento del formato di stampa. Nella QGIS 2.6 è stato introdotto le possibilità di controllare alcune proprietà degli oggetti del compositore con i dati (ad esempio, dimensioni e posizione) in questo articolo mostrerò come creare un atlante (atlas) di mappe con più formati (orizzontale, verticale) all’interno dello stesso progetto e dello stesso layer.
In questo esempio utilizzerò lo shapefile regioni messo a disposizione dall’ISTAT e creerò un atlas in modo da realizzare 20 mappe, una per ogni regione d ‘Italia, adattando il formato della pagina alla forma della regione (cioè per la Puglia il formato sarà orizzontale, per la Sardegna sarà verticale il tutto calcolato da QGIS!!!!).

step 1: dal menu Progetto -> Nuovo modello di stampa (CTRL + P); si aprirà una finestra che chiederà un titolo per il modello (se non scrivete nulla, QGIS metterà un nome di default ‘Layout1’):
dopo aver cliccato su ‘OK’ comparirà l’interfaccia del compositore:

step 2: cliccare su zoom tutto per adattare la pagina allo schermo (1) e poi su aggiungi una nuova mappa al layout (2) e tracciare un rettangolo all’interno della pagina:

step 3: definiamo l’atlante

poi, in proprietà oggetto (mappa 1) mettere lo spunto su ‘controllato dall’atlante’.
step 4: controllo dell’orientamento della pagina – tasto destro del mouse sulla pagina (1) e selezionare ‘Proprietà della pagina’:

cliccando nell’icona piccola (2) comparirà un piccolo menu, cliccare su modifica (edit), comparirà il costruttore di espressioni:

l’espressione che farà alternare la pagina da orizzontale a verticale, in funzione della dimensione dell’atlas_geometry, è:
CASE WHEN
bounds_width( @atlas_geometry ) >= bounds_height( @atlas_geometry)
THEN ‘landscape’
ELSE ‘portrait’
END
step 5: controllo dell’orientamento della mappa all’interno della pagina: selezionare la mappa, in proprietà oggetto andare su ‘Posizione e dimensione‘:

dobbiamo modificare ‘Larghezza‘ e ‘Altezza‘ attraverso le iconcine che ci permettono di modificare i dati tramite delle espressioni:
larghezza:

(CASE WHEN
bounds_width( @atlas_geometry ) >= bounds_height( @atlas_geometry)
THEN 297
ELSE 210
END)-10
ps: il -10 tiene conto del fatto che la mappa è più piccola della pagina di 10 unità.
Altezza:

(CASE WHEN
bounds_width( @atlas_geometry ) >= bounds_height( @atlas_geometry) THEN 210
ELSE 297
END)-10
ora siamo pronti per attivare l’atlas e verificare il tutto:

oppure stampare l’intero atlante in PDF:


NOTE FINALI: questa procedura è possibile utilizzarla anche per la versione 2.18, unica nota: la variabile da usare è @atlasgeometry e non come nella 3.0 @atlas_geometry.
Buon divertimento.
video:
Se l’articolo vi è stato utile e volete mantenere attivo il blog, donate:
https://www.paypal.me/pigrecoinfinito
Come sempre…. GRAZIEEEEEE
Non riuscivo a trovare il comando per settare le dimesione della pagina 🙂
"Mi piace"Piace a 1 persona
Grazie a te !!!
"Mi piace""Mi piace"
Le espressioni sono qualcosa di fenomenale in qgis! Complimenti per ol tutorial
"Mi piace"Piace a 1 persona
Grazie.
"Mi piace""Mi piace"
Totò …che dire …un altro eccellente esempio di soluzione pratica a “problemi” pratici. Grazie.
"Mi piace""Mi piace"
Grazie a te Marco per aver lasciato un commento
"Mi piace""Mi piace"
ciao, faccio una domanda a cui non ho mai trovato risposta.. e’ possibile tramite atlante avere tanti pdf composti da 2 pagine (e non una sola) la prima fissa (in A4 verticale) e la seconda dinamica (in A3 orizzontale)? in pratica alle mappe generate dall’atlante dovrei aggiungere una pagina di intestazione. Grazie
"Mi piace"Piace a 1 persona
In QGIS 3.0 è possibile farlo usando i report.
"Mi piace""Mi piace"
grazie.. uso ancora 2.18 e a questo punto proverò presto QGIS 3. ps: Solo dopo che avevo fatto la domanda mi sono accorto che avevi scritto un articolo proprio sui report…
"Mi piace"Piace a 1 persona