Pakiet służy do określenia parametrów strony, podobnie jak vmargin.sty, ale w sposób bardziej intuicyjny.
Parametry możemy określać na dwa sposoby:
\usepackage[scale={0.7,0.8},nohead]{geometry}
\geometry{scale={0.7,0.8},nohead}
powyższą makroinstrukcję można używać wielokrotnie (kolejność
występowania definicji parametrów może mieć znaczenie
Pojęcia zdefiniowane nieco różnią się od znanych nam ze standardowego Latex-a:
| paper | - | całkowity rozmiar papieru |
| total-body | - | obszar zadrukowany (zawiera nagłówek i stopkę oraz notki na marginesie) |
| body | - | kolumna składu (może być podzielona na szpalty) |
| margins | - | marginesy strony (odległość między obszarem drukowania (total-body), a krawędzią papieru) |


| wartości parametrów | rezultat | ||||||
| left | width | right | left | width | right | ||
| top | height | bottom | top | height | bottom | ||
| * | * | * | m | l | m | domyślne | |
| A | * | * | A | R1 | A | balans | |
| * | * | A | A | R1 | A | balans | |
| * | A | * | R2 | A | R2 | centrowanie | |
| A | B | * | A | B | R3 | ||
| A | * | B | A | R3 | B | ||
| * | A | B | R3 | A | B | ||
| A | C | B | A | R3 | B | ||
Lista opcji:
| nazwa | znaczenie |
|---|---|
| verbose | wyświetla komunikaty oraz obliczone (ustawione) parametry strony |
| nohead | równoważne: headheight=0pt |
| nofoot | równoważne: footskip=0pt |
| noheadfoot | równoważne: footskip=0pt i headheight=0pt |
| includemp | przy automatycznym ustalaniu szerokości łamu, na podstawie rozmiarów papieru uwzględniane jest miejsce na notatkę (wielkości marginparsep i marginparwidth) |
| reversemp reversemarginpar | notka na marginesie pojawi się na przeciwległym marginesie (oczywiście uwzględniana jest opcja twoside) |
| twoside | ustawia parametry strony tak, aby uwzględnić druk dwustronny (notki na marginesie pojawią się na zewnętrznych marginesach; będą również różne marginesy -- prawy i lewy) |
| portrait | ustawia format strony w ,,pionie'' (ustawienie domyślne) |
| landscape | ustawia format strony w ,,poziomie'' (zamienia szerokość z wysokością) |
| dvips | przekazuje wartości określające wielkość strony do postscriptu -- wskazana jeśli dokument będzie przetwarzany via postscript |
| pdftex | (tylko dla pdftex-a przekazuje wartości określające wielkość strony do pliku wynikowego .pdf -- ustawia \pdftexoutput=1 |
| a0paper a1paper a2paper a3paper a4paper a5paper a6paper b1paper b2paper b3paper b4paper b5paper b6paper letterpaper executivepaper legalpaper | ustawia rozmiar papieru |
| reset | ustawia wartości parametrów na domyślne (nie kasuje ustawionego rozmiaru paieru) |
| paper=nazwa papername=nazwa | ustawia rozmiar papieru; np: paper=a4paper |
| paperwidth=szerokość | ustala szerokość papieru |
| paperheight=wysokość | ustala wysokość papieru |
| width totalwidth | ustawia szerokość obszaru roboczego strony (total body -- patrz rysunek); jeśli równocześnie jest zdefiniowany parametr textwidth to definicja width jest ignorowana |
| height totalheight | ustawia wysokość obszaru roboczego strony (total body -- patrz rysunek); jeśli równocześnie jest zdefiniowany parametr textheight to definicja height jest ignorowana |
| left=szerokość lmargin=szerokość | ustala lewy margines strony (kompensowany jest zwyczajowy margines 1 cal ustawiany w programach drukujących) |
| right=szerokość rmargin=szerokość | ustala prawy margines strony |
| right=szerokość rmargin=szerokość | ustala prawy margines strony |
| top=wysokość tmargin=wysokość | ustala górny margines strony (kompensowany jest zwyczajowy margines 1 cal ustawiany w programach drukujących) |
| bottom=wysokość bmargin=wysokość | ustala dolny margines strony |
| hscale=stosunek | określa stosunek szerokości obszaru roboczego (total body) do szerokości papieru |
| vscale=stosunek | określa stosunek wysokości obszaru roboczego (total body) do wysokości papieru |
| textwidth=szerokość | definiuje szerokość składu |
| textheight=wysokość | definiuje wysokość składu (kolumny) |
| marginparwidth=szerokość marginpar=szerokość | definiuje szerokość noty na marginesie |
| marginparsep=odległość | odległość między tekstem, a notą |
| headheight=wysokość head=wysokość | wysokość nagłówka |
| headsep=odległość | odległość między tekstem, a nagłówkiem |
| footskip=odległość foot=odległość | odległość między podstawą ostatniej linii tekstu na stronie (baseline), a podstawą ostatniej linii stopki |
| hoffset=przesunięcie | dodatkowe przesunięcie całego drukowanego materiału w poziomie |
| voffset=przesunięcie | dodatkowe przesunięcie całego drukowanego materiału w pionie |
| twosideshift=odstęp | określa dodatkowy odstęp, który jest dodawany do lewego marginesu na stronach nieparzystych i prawego na stronach parzystych |
| mag=skala | określa stosunek w jakim będą przeskalowane wszystkie rozmiary (również wielkość czcionki) -- 1000 oznacza wielkość naturalną (np. dla papieru a4 (a4paper) mag=1414 oznacza przeskalowanie rozmiaru strony do wielkości a3) |
| papersize={szerokość,wysokość} | określenie rozmiarów papieru, poprzez jawne podanie obu parametrów |
| total={szerokość,wysokość} | określenie rozmiaru roboczego (total body, patrz rysunek) |
| body={szerokość,wysokość} text={szerokość,wysokość} | określenie rozmiaru kolumny składu (body) |
| scale={skala x,skala y} scale={skala} | określenie obszaru roboczego (total body -- patrz rysunek) względem rozmiaru papieru |
| hmargin={margines lewy,margines prawy} hmargin={margines} | określenie lewego i prawego marginesu |
| vmargin={margines górny,margines dolny} vmargin={margines} | określenie lewego i prawego marginesu |
| margin={marginesy poziome,marginesy pionowe} vmargin={marginesy} | określenie marginesów strony (jak łatwo się domyśleć oba (lub wszystkie cztery) marginesy są jednakowe) |
| offset={przesunięcie poziome,przesunięcie pionowe} offset={przesunięcie} | dodatkowe przesunięcie całego drukowanego materiału |
| hdivide={margines lewy, szerokość,margines prawy} | definicja parametrów strony (w poziomie) -- w przypadku podania wszystkich trzech parametrów, może wystąpić konflikt z określonym rozmiarem papieru, wartość parametru może być pusta lub zastąpiona znakiem * -- wtedy wartość jest obliczana na podstawie innych znanych parametrów |
| vdivide={margines górny, wysokość,margines dolny} | definicja parametrów strony (w pionie) -- w przypadku podania wszystkich trzech parametrów, może wystąpić konflikt z określonym rozmiarem papieru, wartość parametru może być pusta lub zastąpiona znakiem * -- wtedy wartość jest obliczana na podstawie innych znanych parametrów |
| divide={margines lewy/górny, szerokość/wysokość,margines prawy/dolny} | definicja parametrów strony (w poziomie i pionie) -- w przypadku podania wszystkich trzech parametrów, może wystąpić konflikt z określonym rozmiarem papieru, wartość parametru może być pusta lub zastąpiona znakiem * -- wtedy wartość jest obliczana na podstawie innych znanych parametrów |
Pakiet nie umożliwia zmiany parametru określającego maksymalną wysokość obszaru zajmowanego przez przypisy; można go zmienić następującym poleceniem:
\setlength{\dimen\footins}{3cm}
(oczywiście zamiast 3 cm mozna wstawić dowolną wartość) oraz
odległości między tekstem, a przypisem; można go zmienić poleceniem:
\setlength{\skip\footins}{3cm}
Włodzimierz Macewicz