diff options
author | Karl Berry <karl@freefriends.org> | 2010-06-20 22:49:25 +0000 |
---|---|---|
committer | Karl Berry <karl@freefriends.org> | 2010-06-20 22:49:25 +0000 |
commit | 9c0ad8fbfd512822a67886c518c39dd69cf426d8 (patch) | |
tree | ac375bec6455266d6304c9bd69d382da0ab15253 /Master/texmf-dist/source/latex/layaureo/layaureo.dtx | |
parent | fc1044910190d3e941c8fffe40f1b9109fb1528c (diff) |
include latex package layaureo
git-svn-id: svn://tug.org/texlive/trunk@19087 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist/source/latex/layaureo/layaureo.dtx')
-rw-r--r-- | Master/texmf-dist/source/latex/layaureo/layaureo.dtx | 547 |
1 files changed, 547 insertions, 0 deletions
diff --git a/Master/texmf-dist/source/latex/layaureo/layaureo.dtx b/Master/texmf-dist/source/latex/layaureo/layaureo.dtx new file mode 100644 index 00000000000..9c3e3be020d --- /dev/null +++ b/Master/texmf-dist/source/latex/layaureo/layaureo.dtx @@ -0,0 +1,547 @@ +% \iffalse +% +% file: layaureo.dtx +% Copyright 2003 Gruppo Utilizzatori Italiani di TeX +% GuIT: http://www.guit.sssup.it +% +% This program is provided under the terms of the +% LaTeX Project Public License distributed from CTAN +% archives in directory macros/latex/base/lppl.txt. +% +% Author: Fabiano Busdraghi +% at fabusdr@yahoo.it +% +% Version: 0.2 +% +% This work has the LPPL maintenance status "author-maintained". +% +%<*driver> +\documentclass[11pt, a4paper]{ltxdoc} +\usepackage[english,italian]{babel} +\usepackage[latin1]{inputenc} +\EnableCrossrefs +\CodelineIndex +\RecordChanges +\begin{document} + \DocInput{layaureo.dtx} +\end{document} +%</driver> +% +% \fi +% +% \CheckSum{337} +% +% \CharacterTable +% {Upper-case \A\B\C\D\E\F\G\H\I\J\K\L\M\N\O\P\Q\R\S\T\U\V\W\X\Y\Z +% Lower-case \a\b\c\d\e\f\g\h\i\j\k\l\m\n\o\p\q\r\s\t\u\v\w\x\y\z +% Digits \0\1\2\3\4\5\6\7\8\9 +% Exclamation \! Double quote \" Hash (number) \# +% Dollar \$ Percent \% Ampersand \& +% Acute accent \' Left paren \( Right paren \) +% Asterisk \* Plus \+ Comma \, +% Minus \- Point \. Solidus \/ +% Colon \: Semicolon \; Less than \< +% Equals \= Greater than \> Question mark \? +% Commercial at \@ Left bracket \[ Backslash \\ +% Right bracket \] Circumflex \^ Underscore \_ +% Grave accent \` Left brace \{ Vertical bar \| +% Right brace \} Tilde \~} +% +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +% +% \def\fileversion{0.2} +% \def\filedate{2004/09/16} +% +% \newcommand*{\pacchetto}[1]{\textsf{#1}}% +% \newcommand*{\codice}[1]{\texttt{#1}} +% \newcommand{\layaureo}{\pacchetto{LayAureo}} +% \newcommand{\riga}{\vspace{\baselineskip}} +% +% \title{Documentazione del pacchetto \pacchetto{LayAureo}\thanks{Il +% numero di versione di questo file è \fileversion; l'ultima revisione è avvenuta +% in data \filedate. Questo pacchetto è stato scritto per il Gruppo Utilizzatori +% italiani di \TeX\ il cui sito è raggiungibile all'indirizzo +% \texttt{http://www.guit.sssup.it}}} +% \author{Fabiano Busdraghi\\(\texttt{fabusdr@yahoo.it})} +% \date{\filedate} +% +% \maketitle +% +% \begin{abstract}\footnotesize +% Pacchetto che modifica il layout di pagina di \LaTeX\ al fine di ottenere +% una maggiore copertura della pagina in formato A4. \layaureo\ fornisce un +% metodo semplice per aggiungere lo spazio richiesto per la rilegatura e un +% opzione per forzare al massimo il riempimento della pagina. +% \end{abstract} +% +% \begin{otherlanguage}{english} +% \begin{abstract}\footnotesize +% This package produces a wide page layout for documents that use A4 paper +% size. Moreover, \layaureo\ provides both a simple hook for leaving an +% empty space which is required if pages are bundled by a press binding (use +% option |binding=length|), and an option called |big| which it forces +% typearea to become maximum. There's no full English documentation yet. +% \end{abstract} +% \end{otherlanguage} +% +% \tableofcontents +% +% \section{Introduzione} +% In questo documento si illustra l'uso del pacchetto \layaureo\ nato +% dall'esigenza di avere il corpo del testo che meglio si adatta alle pagine +% in formato A4 e un metodo semplice per inserire lo spazio necessario alla +% rilegatura. +% +% L'uso del pacchetto è spiegato nella prima sezione, mentre in seguito si +% discute in dettaglio il problema del layout in \LaTeX\ e secondo quali +% criteri è stato costruito il pacchetto. +% +% Dal momento che \layaureo\ modifica un'impostazione così importante com'è +% il layout e che il pacchetto non è configurabile, si consiglia all'utente +% di leggere le discussioni suddette almeno per sapere se concorda o meno +% con quanto detto e quindi se desidera o meno usare il pacchetto. +% +% \subsection{Ringraziamenti} +% L'autore desidera ringraziare infinitamente Emanuele Vicentini, per +% l'impagabile aiuto fornito, le spiegazioni dettagliate, la pazienza e la +% precisione nei suggerimenti, le soluzioni fornite, la competenza e la +% simpatia. Grazie mille Emanuele. +% +% Grazie mille anche a tutti quelli che mi hanno consigliato e che hanno +% discusso con me la questione del layout sul forum del Gruppo Utilizzatori +% italiani di \TeX\, in modo particolare Lapo F. Mori. +% +% \section{Uso del pacchetto} +% +% \subsection{Installazione} +% L'installazione di \layaureo\ non presenta particolari +% difficoltà. Lanciando \LaTeX\ sul file |layaureo.ins| si ottiene il +% file |layaureo.sty| che va spostato in una directory cercata da +% \LaTeX. In seguito al \emph{refresh} del database l'installazione è +% completata. +% +% Per ottenere la presente documentazione è sufficiente compilare due +% volte il file |layaureo.dtx| con \LaTeX\ o pdf\LaTeX. +% +% \subsection{Utilizzo} +% Il pacchetto si carica semplicemente con |\usepackage{layaureo}| che +% imposta automaticamente il layout allargando il corpo del testo e +% adattando i margini in base alle impostazioni\footnote{Ovvero le opzioni +% impostate esplicitamente dall'utente oppure quelle utilizzate di default +% dalla classe in uso.} ereditate dalla classe correntemente in uso. +% +% In particolare il documento sarà |oneside| o |twoside| e la larghezza +% della riga sarà ottimizzata per la dimensione del carattere usato. Nel +% caso la carta non sia A4 viene restituito un errore, così come se è stata +% impostata l'opzione |landscape| o |twocolumn|, dal momento che tali +% opzioni sono incompatibili con l'esigenza che ha dato vita al pacchetto. +% Analogamente non sono permesse le note a margine. +% +% Il pacchetto ha anche due possibili opzioni: +% \begin{description} +% \item[big] Aumenta ulteriormente la dimensione del corpo del testo e +% riduce al minimo i margini laterali e verticali; +% \item[binding=dim] Lascia una spazio uguale a |dim| (dove |dim| è +% una lunghezza\footnote{Sono permesse tutte le unità di misura di \LaTeX.}) per la +% rilegatura del documento\footnote{Esiste una terza opzione +% |rilegatura| che si comporta esattamente come |binding| e che è +% conservata solo per retrocompatibilità. Il suo uso è pertanto +% deprecato, e l'opzione non sarà più disponibile nelle versioni +% future del pacchetto.}. +% \end{description} +% +% \subsection{Esempi} +% Per esempio: +% \begin{verbatim} +% \documentclass[a4paper]{article} +% \usepackage{layaureo} +% \end{verbatim} +% produce un layout espanso con i margini destro e sinistro uguali, mentre: +% \begin{verbatim} +% \documentclass[a4paper,12pt,twoside]{article} +% \usepackage[big,binding=.6cm]{layaureo} +% \end{verbatim} +% produce un layout che riempe totalmente la pagina di testo, lascia un +% bordo di 6mm che verra utilizzato per la rilegatura e, una volta che il +% documento sarà rilegato\footnote{Ovvero una volta che i 6mm per la +% rilegatura saranno stati visivamente eliminati.}, i margini laterali +% risulteranno in rapporto aureo. +% +% \section{Il tormentone del layout} +% Utilizzando una delle classi standard di \LaTeX\ --- senza pacchetti +% particolari che modificano il layout o ridefinizioni dell'autore delle +% impostazioni di pagina --- la maggior parte degli utilizzatori europei che +% stampano su carta in formato A4, trovano che i margini utilizzati da +% \LaTeX\ sono ``troppo stretti'' e che in generale il foglio non è +% ``sufficientemente ben riempito''. +% +% \LaTeX\ inoltre non prevede un modo semplice per lasciare dello spazio +% riservato alla rilegatura del documento stampato. Il risultato è che, +% utilizzando per esempio la classe la classe \pacchetto{book}, con +% l'opzione |twoside|, questa lasci in bianco un grande margine a destra +% delle pagine dispari mentre il già piccolo margine sinistro venga quasi +% interamente consumato dalla rilegatura. +% +% Dal momento che la stragrande maggioranza degli utilizzatori del vecchio +% continente stampa in A4 e ha a disposizione solo metodi casalinghi di +% stampa e rilegatura, molto spesso gli utilizzatori di \LaTeX\ restano +% insoddisfatti del layout standard e lo modificano a mano, ottenendo +% pessimi risultati tipografici. +% +% Sono nati quindi svariati pacchetti per ovviare al problema, alcuni, come +% \pacchetto{a4wide}, il cui uso è sempre più spesso deprecato vista +% l'incompatibilità delle varie versioni disponibili e il discutibile +% risultato grafico. Altri invece sono ottimi pacchetti che mettono a +% disposizione dell'utente numerosi e flessibili comandi per modificare a +% proprio piacimento il layout del documento. Si ricorda a tal fine +% soprattutto \pacchetto{geometry}, ma anche \pacchetto{vmargin} o le classi +% della collezione \pacchetto{KOMA-script} e la bellissima e versatile +% classe \pacchetto{memoir}. +% +% Tutti questi pacchetti e classi svolgono egregiamente il loro lavoro, e +% l'utente che desidera creare autonomamente e originalmente il proprio +% layout dovrebbe indirizzarsi al loro utilizzo piuttosto che modificare a +% mano le lunghezze usate da \LaTeX\ per la costruzione del layout, come +% |\oddsidemargin|, |\textwidth|, \textit{etc}. +% +% L'unico lato negativo dell'utilizzo di tali pacchetti è che definire in +% maniera corretta e funzionale il layout di una pubblicazione non è +% semplice e molto facilmente si incorre in errori e imperfezioni. +% +% Uno dei più grandi vantaggi di \LaTeX\ è che consente di disinteressarsi +% completamente alle questioni puramente tipografiche, per dar modo +% all'autore di concentrarsi \emph{unicamente} sulla struttura e sui +% contenuti del proprio documento. +% +% Questo punto dovrebbe sempre essere tenuto presente: utilizzando una +% classe scritta da altri l'utente accetta per buone tutte le impostazioni +% tipografiche scelte per lui dall'autore della classe, non è più tenuto a +% studiare tipografia per mettere a punto lo stile delle proprie +% pubblicazioni, può concentrarsi su altro. Questo è quello che succede +% quando si usano le classi standard, modificarne il layout significa andare +% contro a questa filosofia e, accidentalmente, essere obbligati a studiare +% un po' di tipografia per non ottenere risultati vergognosi. +% +% Tutti i pacchetti citati precedentemente funzionano ottimamente, ma +% costringono l'utente ad interessarsi della forma oltre che della +% struttura. +% +% Il pacchetto \layaureo\ è nato per mettere a disposizione dell'utente un +% layout pronto all'uso, che soddisfi un certo numero di esigenze: +% \begin{itemize} +% \item Avere una maggior copertura della pagina in formato A4 a differenza di quanto +% accade con le classi standard; +% \item Fornire un modo semplice per impostare lo spazio destinato alla +% rilegatura. +% \end{itemize} +% +% Il layout ottenuto con \layaureo\ non è quindi configurabile o +% personalizzabile\footnote{L'unica eccezione è lo spazio riservato alla +% rilegatura.}. Il layout è qualcosa di molto personale e relativo, quindi +% se l'utente è soddisfatto da quello messo a disposizione dal pacchetto e +% trova allettante l'idea di disinteressarsi al problema della definizione +% del layout, allora potrà utilizzare con soddisfazione \layaureo; +% altrimenti, se un autore ha esigenze diverse o non è soddisfatto dalla +% resa grafica del pacchetto allora può provare a rivolgersi agli altri +% pacchetti o classi precedentemente citati e costruirsi da solo il layout +% che corrisponde alle proprie aspettative. +% +% \section{Il layout di LayAureo} +% In questa sezione viene descritto come è stato costruito il layout del +% pacchetto, con l'intento di giustificare le scelte fatte. +% +% Si parte dall'assunzione che l'utente usi un foglio A4 e dalla +% constatazione che il corpo del testo, usando le classi standard, riempe a +% mala pena la pagina. Il punto di partenza sarà quindi scegliere le +% dimensioni del corpo del testo, in maniera che ricopra sufficientemente la +% pagina. +% +% \subsection{Bringhurst e la lunghezza della riga} +% Le impostazioni di \LaTeX\ non sono dovute al caso, anzi cercano sempre di +% mettere a disposizione dell'utente il risultato migliore dal punto di +% vista tipografico. +% +% Per quanto riguarda la larghezza della riga questa è impostata in maniera +% che la leggibilità sia massima, che il lettore non abbia difficoltà a +% seguirla con lo sguardo e a trovare la successiva quando ne è arrivato al +% termine. +% +% La lunghezza della riga è stata decisa utilizzando un metodo empirico +% inventato da Bringhurst. Per quanto riguarda le dimensioni del testo nelle +% classi standard si trova che le dimensioni ottimali sono quelle riportate +% in tabella \ref{dimriga}, dove sono stati anche riportati i valori +% utilizzati dalle classi standard di \LaTeX: +% +% \begin{table}[!ht]\centering +% \begin{tabular}{l c c c} +% \hline +% Dimensione carattere: & 10pt & 11pt & 12pt\\ +% Larghezza ottimale: & 22--26pc & 24--28pc & 26--30pc\\ +% Larghezza \LaTeX\ standard: & $\sim$28,7pc & 30pc & $\sim$32,5pc\\ +% \hline +% \end{tabular} +% \caption[Lunghezza riga]{\small In funzione della dimensione del carattere +% utilizzato sono riportati i valori ottimali della larghezza della riga +% determinati secondo il metodo di Bringhurst e i valori utilizzati +% dalle classi standard di \LaTeX\ per impostare la larghezza del corpo del testo.} +% \label{dimriga} +% \end{table} +% +% Come si vede \LaTeX\ già utilizza delle righe un po' troppo lunghe +% rispetto a quanto determinato da Bringhurst. Si può quindi dedurre a +% ragione che il layout di \LaTeX\ già fornisce delle righe molto lunghe e +% che è sconsigliabile allungarle ulteriormente. +% +% Questo ragionamento è corretto, e va tenuto presente. Se con le pagine A4 +% il testo sembra troppo stretto e i margini esagerati, allora sarebbe +% meglio stampare su fogli più piccoli, in maniera da avere dei margini più +% ridotti, lasciando però la lunghezza della riga invariata. Solo in questo +% modo si può conciliare l'esigenza di avere una pagina ``piena'' con quella +% di avere una riga dalla lunghezza ottimale per la lettura. +% +% Se si parte dall'assunto che si stampa in formato A4 e si aumenta la +% larghezza della riga rispetto a quanto fatto da \LaTeX\ standard, bisogna +% tenere presente che si diminuisce la leggibilità del documento. Perché +% allora creare un pacchetto che diminuisce la leggibilità di un documento? +% Il pacchetto \layaureo\ infrange la regola di Bringhurst perché in +% ambiente universitario o casalingo la norma (o a volte l'obbligo) è +% stampare su fogli A4 e spesso sorge l'esigenza concreta di avere un +% riempimento maggiore della pagina (numero massimo di pagine della tesi, +% relatore dai pessimi gusti\ldots) +% +% Nonostante questo bisogna sempre tenere presente che \layaureo\ +% \textbf{aumenta l'ampiezza della riga portandola al di sopra del valore +% ottimale} e il risultato può essere meno leggibile dell'originale.\riga +% +% Detto ciò vediamo come \layaureo\ modifica la dimensione della riga: dal +% momento che le battute per riga devono essere comprese fra 60 e 70 si +% ottiene con la regola di Bringhurst che la larghezza della riga ottimale è +% definita a meno di 4pc. +% +% Si può interpretare questo valore come l'incertezza della lunghezza della +% riga ottimale. \layaureo\ aumenta la larghezza della riga di questo +% valore\footnote{Nel caso venga specificata l'opzione |big| la riga viene +% incrementata di ancora 3pc.} di incertezza, ma la scelta è puramente +% arbitraria. +% +% \subsection{Proporzioni: la sezione aurea} +% +% Come si è visto nella sezione precedente il punto di partenza di +% \layaureo\ è la larghezza della riga. Una volta stabilita questa restano +% da costruire tutti gli elementi che compongono il layout. Il criterio +% adottato è quello di ottenere un layout dove i vari oggetti hanno fra di +% loro proporzioni armoniose. +% +% Gia i greci scoprirono che se si divide una linea retta di lunghezza $l$ +% in due parti di lunghezza rispettiva $a$ e $b$, il massimo risultato +% estetico in termini di armonia e bellezza si ottiene quando il rapporto +% fra $a$ e $b$ è dato dalla sezione aurea $\phi$, armonia che si ottiene +% quando il rapporto della lunghezza maggiore sulla minore è uguale al +% rapporto fra l'intera linea e la lunghezza maggiore. In formule, se $b>a$: +% \[\phi= \frac{b}{a}=\frac{a+b}{b}= (1+\sqrt{5})/2\] +% +% La sezione aurea ricorre frequentemente in matematica, in fisica, in arte, +% in tipografia e in natura ed è sempre associata a proprietà di equilibrio +% ed armonia. Per questo motivo \layaureo\ imposta l'altezza del testo in +% maniera che sia in rapporto aureo con la larghezza, da cui il nome del +% pacchetto. +% +% Nel caso di formato A4 la proporzione fra i lati della pagina non è $\phi$ +% ma $\sqrt{2}$. La scelta di una proporzione diversa riduce l'effetto di un +% rettangolo (il corpo del testo) infilato in un altro rettangolo uguale (la +% pagina). Inoltre in questo modo il layout assomiglia di più a quello di +% \LaTeX\ standard (che usa un rapporto fra l'altezza e la larghezza del +% testo addirittura maggiore di $\phi$). +% +% Infine si ricorda che, rilegando il documento stampato, la pagina risulta +% visivamente più piccola, vedendo il lato minore diminuito della quantità +% necessaria alla rilegatura. +% +% \subsection{Margini e note a margine} +% +% I margini sono costruiti di conseguenza, per quanto riguarda quelli +% laterali sono uguali in caso di documento |oneside| e in proporzione aurea +% per |twoside| con il margine minore a sinistra delle pagine dispari. +% +% I margini verticali invece non sono in rapporto aureo ma piuttosto +% $\sqrt{2}$, perché altrimenti l'inferiore appare troppo grande, +% soprattutto considerando che le intestazioni si trovano più frequentemente +% nella parte alta della pagina che in quella bassa, riducendo visivamente +% il bordo superiore. +% +% Infine non è stato lasciato lo spazio per le note a margine, dato che +% diminuendo i bordi stessi rispetto a quelli di \LaTeX\ standard non rimane +% più spazio per le note. Se l'utente ha necessità di utilizzare le note a +% margine allora è meglio che si indirizzi sulle classi standard che +% prevedono lo spazio adeguato. +% +% \StopEventually{} +% +% \section{Il Codice} +% +% Annuncio del pacchetto e richiesta dei package necessari a \layaureo. +% \begin{macrocode} +%<*style> +\ProvidesPackage{layaureo}[2004/09/16 v0.2] +\RequirePackage{geometry} +\RequirePackage{calc} +\RequirePackage{keyval} +% \end{macrocode} +% +% Dichiarazione delle lunghezze interne e inizializzazione +% a 0 della larghezza del corpo del testo. +% \begin{macrocode} +\newlength{\LA@MargineRilegatura} +\newlength{\LA@LarghezzaTesto} +\newlength{\LA@AltezzaTesto} +\newlength{\LA@MargineSinistro} +\newlength{\LA@MargineSuperiore} +\setlength{\LA@LarghezzaTesto}{0pt} +% \end{macrocode} +% +% \begin{macro}{\LayAureo@ErrPagina} +% Semplice macro che restituisce un messaggio d'errore nel caso +% l'utente cerchi di usare \layaureo\ +% con una dimensione del foglio diversa da A4. +% \begin{macrocode} +\def\LayAureo@ErrPagina{ + \PackageError{LayAureo}% + {The paper dimension is not A4}% + {You must choose the "a4paper" class option}} +% \end{macrocode} +% \end{macro} +% +% Se il foglio non è A4 è inutile continuare. +% \begin{macrocode} +\ifdim\paperwidth=210mm + \ifdim\paperheight=297mm + \relax + \else + \LayAureo@ErrPagina + \fi +\else + \LayAureo@ErrPagina +\fi +% \end{macrocode} +% +% Analogamente non si può usare \layaureo\ quando si vuole un documento |twocolumn|. +% \begin{macrocode} +\if@twocolumn + \PackageError{LayAureo}% + {LayAureo doesn't work with the twocolumn option}% + {You must choose the "onecolumn" class option} +\fi +% \end{macrocode} +% +% Definizione delle opzioni |binding| e |big|. +% \begin{macrocode} +\define@key{LayAureo}{binding}[0pt]% + {\setlength{\LA@MargineRilegatura}{#1}} +\newif\if@LA@big +\define@key{LayAureo}{big}[true]{\@nameuse{@LA@big#1}} +% \end{macrocode} +% +% Definizione dell'opzione |rilegatura| utilizzata solo per +% retrocompatibilità il cui uso è deprecato. +% \begin{macrocode} +\define@key{LayAureo}{rilegatura}[0pt]% + {\PackageWarningNoLine{LayAureo}% + {Option "rilegatura" is obsolete, use binding instead}% + \setlength{\LA@MargineRilegatura}{#1}} +% \end{macrocode} +% +% \begin{macro}{\ProcessOptionsWithKV} +% Definizione della macro che permette di processare le opzioni con il +% pacchetto \pacchetto{keyval}. Questa macro è +% necessaria per poter specificare come opzione di \layaureo\ un valore da assegnare +% al margine lasciato per la rilegatura, utilizzando la sintassi +% |\usepackage[binding=dim]{layaureo}| dove |dim| è una lunghezza. +% \begin{macrocode} +\def\ProcessOptionsWithKV#1{% + \let\@tempa\@empty + \@for\CurrentOption:=\@classoptionslist\do{% + \@ifundefined{KV@#1@\CurrentOption}% + {}{\edef\@tempa{\@tempa,\CurrentOption,}}}% + \edef\@tempa{% + \noexpand\setkeys{#1}% + {\@tempa\@ptionlist{\@currname.\@currext}}}% + \@tempa + \AtEndOfPackage{\let\@unprocessedoptions\relax}} +% \end{macrocode} +% \end{macro} +% +% Qui si processano le opzioni e, nel +% caso sia stata specificata l'opzione |big| si aumenta la larghezza +% del testo di ancora 3pc. +% \begin{macrocode} +\ProcessOptionsWithKV{LayAureo} +\if@LA@big + \addtolength{\LA@LarghezzaTesto}{3pc}% +\fi +% \end{macrocode} +% +% Si effettua il controllo sul contenuto di |\@ptsize| in modo da sapere se il documento +% sta usando una dimensione del font di 10, 11 o 12pt. A seconda dei casi si imposta +% la larghezza del testo in modo che superi di 4-5pc la larghezza ottimale della riga +% determinata con la legge empirica di Bringhurst. Se per caso il contenuto di |\@ptsize| +% è diverso da 0, 1 o 2 si usa un'impostazione uguale al caso 11pt, ma il pacchetto +% restituisce un warning. +% \begin{macrocode} +\long\def\temp@a{0}% +\ifx\@ptsize\temp@a + \addtolength{\LA@LarghezzaTesto}{31pc}% +\else + \long\def\temp@a{1}% + \ifx\@ptsize\temp@a + \addtolength{\LA@LarghezzaTesto}{33pc}% + \else + \long\def\temp@a{2}% + \if\@ptsize\temp@a + \addtolength{\LA@LarghezzaTesto}{35pc}% + \else + \addtolength{\LA@LarghezzaTesto}{33pc}% + \PackageWarningNoLine{LayAureo}% + {Textwidth as whith the "11pt" class option}% + \fi + \fi +\fi +% \end{macrocode} +% +% L'altezza del testo viene assegnata in maniera che sia in rapporto aureo +% con la larghezza. Il margine superiore viene assegnato in maniera che +% quello inferiore sia $\sqrt{2}$ volte il margine superiore. +% \begin{macrocode} +\setlength{\LA@AltezzaTesto} + {1.61803\LA@LarghezzaTesto} +\setlength{\LA@MargineSuperiore} + {.41421\paperheight-.41421\LA@AltezzaTesto} +% \end{macrocode} +% +% Se il documento è in |twoside| i margini laterali vengono messi in rapporto +% aureo, altrimenti sono uguali. +% \begin{macrocode} +\if@twoside + \setlength{\LA@MargineSinistro} + {0.38197 \paperwidth-0.38197\LA@LarghezzaTesto} +\else + \setlength{\LA@MargineSinistro} + {(\paperwidth-\LA@LarghezzaTesto)/2} +\fi +% \end{macrocode} +% +% Finalmente si passano tutte le impostazioni a \pacchetto{geometry} +% e si lascia che questo pacchetto faccia il suo lavoro al posto nostro. +% \begin{macrocode} +\geometry{ + a4paper, + ignoremp, + bindingoffset=\LA@MargineRilegatura, + textwidth=\LA@LarghezzaTesto, + textheight=\LA@AltezzaTesto, + lmargin=\LA@MargineSinistro, + tmargin=\LA@MargineSuperiore} +%</style> +% \end{macrocode} +% +% +\endinput |