TeX e LaTeX.
La geometria della pagina

I margini

Sia nelle guide ufficiali che non, si sente spesso parlare dei margini dei documenti prodotti con LaTeX. Troppo stretti, riempono male la pagina ecc... Anche le risposte sono sempre quelle, cioè che vanno bene così come sono per motivi di leggibilità. È possibile cambiare questi margini usando comandi a basso livello (sconsigliato) oppure usando le opzioni della specifica classe che state usando oppure ancora con pacchetti appositi. Spesso si ha questa esigenza per introdurre un margine per la rilegatura oppure perché vengono richiesti particolari margini dall'Università o da una rivista.

Il pacchetto che meglio soddisfa queste esigenze è geometry, usabile con qualsiasi classe standard e facile da usare. Purtroppo è utile solo a chi voglia specificare tutti i parametri della pagina. Difatti, è sì possibile agire su un solo parametro, ma geometry applicherà questa impostazione non al layout specifico della classe che state usando ma al suo layout di default, che ritengo abbastanza brutto. Non conosco pacchetti che permettano di modificare il layout partendo da quello della classe attuale. L'unica possibilità è di agire sui parametri a basso livello di LaTeX (vedere le guide ufficiali).

Classi diverse da quelle standard mettano a disposizione dei comandi appositi per ridefinire i margini. Tra queste ci sono le classi KOMAscript e la classe memoir. Purtroppo anche queste classi, nonostante siano viste da molti come i successori della classe book, hanno un layout predefinito diverso da quest'ultima; e non hanno neanche alcuna opzione che permetta questo. Tra le due preferisco memoir che restringe un po' i margini, ma non in maniera eccessiva come fanno invece geometry e le classi KOMAscript.

Adottando memoir come classe per i proprio documenti, si dovrà comunque leggere a dovere la sua documentazione per essere in grado di cambiare il layout. Manca purtroppo un'opzione, presente invece nelle classi KOMAscript e nel pacchetto geometry, per specificare in maniera semplice il margine che verrà coperto dalla rilegatura (binding). Solo a titolo di esempio, questo è il codice per spostare la pagina della quantità necessaria per la rilegatura (leggi sotto per gli inconvenienti di questo approccio).

\newlength{\rilegatura}
\setlength{\rilegatura}{1cm}
\addtolength{\rilegatura}{\spinemargin}
\setlrmargins{\rilegatura}{*}{*}
\checkandfixthelayout
\fixpdflayout (solo se usate pdflatex)

Se non avete particolari esigenze potete usare il pacchetto layaureo. Restringe i margini leggermente di più di memoir ma il risultato è comunque molto gradevole. Ha un apposito parametro che regola il margine per la rilegatura; una volta tolto quest'ultimo, i margini destro e sinistro sono in rapporto secondo la sezione aurea. La sezione aurea torna anche in altri aspetti del layout. Il problema è che, come nell'esempio grezzo che ho fatto sopra riferendomi alla classe memoir, viene tutto traslato verso l'esterno per lasciare lo spazio specificato per la rilegatura. Così facendo, se si imposta un margine per la rilegatura già di pochi millimetri, le note a margine vanno a finire fuori dal foglio ed infatti l'autore di layaureo dice espressamente che non devono essere usate.

Da quanto detto, se non vi servono le note a margine, consiglio di usare sempre memoir e il pacchetto layaureo per avere una pagina armoniosa e poter regolare il margine di rilegatura in maniera molto semplice.

\documentclass[a4paper,11pt]{memoir}

oppure

\usepackage[binding=1cm]{layaureo}

Se invece vi servono le note a margine consiglio sempre di usare memoir, stavolta insieme al pacchetto geometry, specificando a mano alcuni margini e lasciando fare il resto a geometry.

\documentclass[a4paper,11pt]{memoir}
\usepackage[opzioni]{geometry}

Il pacchetto changepage

Per cambiare i margini di singole pagine lasciando le altre inalterate usate il pacchetto changepage. Aggiornamento! Ora non serve più, perché geometry ha un apposito comando per fare questa cosa.

Il pacchetto layout

Se volete controllare tutti i parametri della vostra pagina, caricate il pacchetto layout e date il comando \layout dove vi pare nel vostro documento. Esiste l'opzione reals da specificare al caricamento del pacchetto affinché al richiamo del comando \layout stampi tutti i parametri fondamentali della pagina senza arrotondarli.