summaryrefslogtreecommitdiff
path: root/info/german/fancyhdr/index.html
blob: f6ba82f9f00ef41a9402241efe7112da3f11fa0a (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
<HTML>
<HEAD>
<TITLE>fancyhdr.sty
</TITLE>
<META NAME="contents" CONTENT="fancyhdr.html">
<META NAME="language" CONTENT="german">
<META NAME="keywords" CONTENT="tex,latex,fancyhdr,fancyheader">
<META NAME="description" 
      CONTENT="A short german description of fancyhdr">
<META NAME="author"
      CONTENT="Hans Friedrich Steffani">
<LINK REV="made"
 HREF="mailto:hans.steffani@e-technik.tu-chemnitz.de (Hans Friedrich Steffani)">
</HEAD>
<BODY>
<H1>Kurzbeschreibung von <code>fancyhdr.sty</code></H1>
<H2>von Hans Friedrich Steffani</H2>
Mit dem fancyhdr-Paket k&ouml;nnen Kopf- und Fu&szlig;zeilen von
Dokumenten frei gestaltet werden. Es findet sich &uuml;blicherweise im
Verzeichnis <tt>latex/contrib/supported/fancyhdr/</tt> auf diversen
FTP-Servern und nat&uuml;rlich auch auf CTAN.
<uL>
<li>Hier die 
Originaldokumentation als 
<A
HREF="ftp://ftp.dante.de/tex-archive/macros/latex/contrib/supported/fancyhdr/fancyhdr.dvi">dvi-</A>
bzw. als
<A
HREF="ftp://ftp.dante.de/tex-archive/macros/latex/contrib/supported/fancyhdr/fancyhdr.dvi">pdf-</A>Datei.
f&uuml;r das fancyhdr-Paket
Die gibt es an entsprechender stelle nat&uuml;rlich auch auf dem
n&auml;chstgelegenen CTAN-Spiegel.
</LI>

<LI>Folien f&uuml;r einen Vortrag <A
HREF="fancyfolien+bsp.pdf">mit</A> und 
<A HREF="fancyfolien.pdf">ohne</A>
eigebettete Beispiele (die Seite habe ich nat&uuml;rlich auch mit
<tt>fancyhdr</tt> gestaltet)</LI>
<LI><code>\chaptermark{&lt;befehle zur generierung der Kopfzeile&gt;}</code>
    in den Standardklassen ist ein <code>\MakeUppercase</code> hart
    codiert, so da&szlig; ich statt dessen<BR>
    <code>\renewcommand{\chaptermark}[1]{%<BR>
 \markboth{\chaptername\ \thechapter{}: #1}{}}</code><BR>
    verwende. Es wird von <code>\chapter</code> aufgerufen.
</LI>
<LI>&Auml;hnliches gilt f&uuml;r <code>\sectionmark</code>. Auch dort ist
    <code>\MakeUppercase</code> hart codiert, so da&szlig; ich statt
    dessen <BR>
    <code>\renewcommand{\sectionmark}[1]{%<BR>
 \markright{\thesection{}: #1}{}}</code><BR>
     verwende.
</LI>
</Ul>
Nun, <code>\markboth</code> und <code>\markright</code> sorgen dann daf&uuml;r,
da&szlig; <code>\rightmark</code> und <code>\leftmark</code> geeignet
definiert sind, um daraus die Kopfzeilen zu bauen. Damit kommt
<tt>fancyhdr.sty</tt> zum Zug. Deren Makros werden nun kurz
beschrieben. Die Seite ist so aufgeteilt:

<table cellpadding=10 Border>
<TR><td> Linker Kopf </td> <td> Mittlerer Kopf </td> <td> Rechter Kopf </td></TR>
<TR><td> Text </td> <td> Text </td> <td> Text </td></TR>
<TR><td> Linker Fu&szlig; </td> <td> Mittlerer Fu&szlig; </td> <td> Rechter Fu&szlig; </td></TR>
<caption>Eine Seite</caption>
</table>

<UL>
<LI>Die einfachsten Makros
    <code>\lhead{}</code> und <code>\chead{}</code> und
    <code>\rhead{}</code> sowie
    <code>\lfoot{}</code> und <code>\cfoot{}</code> und
    <code>\rfoot{}</code> legen das entsprechende Feld fest.</LI>
</UL>
Damit lassen sich allerdings die K&ouml;pfe f&uuml;r doppelseitige
Dokumente nicht gestalten denn hier wird zwischen linken (gerade) und
rechten (ungeraden)
Seiten unterschieden. Hier will man in der Regel unterschiedliche
K&ouml;pfe &uuml;ber den rechten und linken Seiten. Dazu gibt es
<UL><LI><code>\fancyhead[&lt;wo1, wo2, ... &gt;]{&lt;was&gt;}</code>
    Das <code>&lt;wo<&gt></code> wird aus der Kombination von
    <code>E</code>ven f&uuml;r gerade bzw. <code>O</code>dd f&uuml;r
    ungerade Seiten, sowie
    <code>L</code>, <code>C</code> und <code>R</code> f&uuml;r das 
    linke, mittlere und rechte Feld.
    Bei mir steht da<BR>
    <CODE>
    \fancyhead[EL]{\itshape\leftmark}% E=grade=linke Seiten und dort
links, also au&szlig;en das \leftmark<BR>
    \fancyhead[OR]{\itshape\rightmark}% O=ungrade=rechte Seiten und
dort rechts, also au&szlig;en das \rightmark<BR>
    \fancyfoot[CO,CE]{\thepage} % Seitenzahl immer unten Mitte
    </CODE><BR>
    Damit wird
    <UL><LI>Auf ungeraden Seiten rechts, d.h. au&szlig;en
            <code>\rightmark</code>,</LI>
    <li>auf geraden Seiten links, ebenfalls au&szlig;en
            <code>\leftmark</code></LI>
    <li>Die Seitenzahl kommt in die Fu&szlig;zeile wo sie immer ist</LI>
    </UL> 
    </LI>
    <LI>Entsprechendes gilt f&uuml;r <code>\fancyfoot[]{}</code></LI>
    <LI>Wird da optionale Argument weggelassen, so gilt das Argument
        f&uuml;r alle Felder.(?)
        Zum Beispiel l&ouml;scht <code>\fancyhead{}</code> alle Kopffelder.
    <LI>Ich hab den Kleinen Duden, Band 4, Deutsche Grammatik. Dort
haben sie einen Kopf wie oben, aber setzen die Seitenzahl immer nach
innen (m.E. ziemlicher Schwachsinn). Das geht dann mit<BR>
    <CODE>\fancyhead[OL,ER]{\thepage} % Seitenzahl nach innen<BR>
          \fancyfoot{}% unten nichts</CODE></LI>
    <LI>Beliebt ist schliesslich noch, da&szlig; die Seitenzahl oben
au&szlig;en steht. Dies ist bei fast allen meinen B&uuml;chern so, die
eine Kopfzeile haben. (Bei den anderen ist die Seitenzahl unten
au&szlig;en.) Das geht dann mit<BR>
<code>
\fancyfoot{}% Unten nichts<BR>
\fancyhead[RE]{\itshape\leftmark}% Rechts auf geraden Seiten=innen<BR>
\fancyhead[RO]{\itshape\rightmark}% Links auf ungeraden Seiten=au&szlig;en<BR>
\fancyhead[RO,LE]{\thepage}%Rechts auf ungeraden und links auf
geraden Seiten<br></CODE>
</UL>
Um das alles richtig zu machen, mu&szlig; man immer im Hinterkopf
haben das immer die geraden Seiten links und die ungeraden Seiten
rechts beim aufgeklappten Buch liegen.
<P>

Noch allgemeiner ist 
<UL>
<LI><code>\fancyhf</code>, da&szlig; auch noch <code>H</code> und 
     <code>F</code> f&uuml;r Kopf- bzw. Fu&szlig;zeile kennt
</UL>
Die Argumente d&uuml;rfen dabei auch <code>\\</code> enthalten. Es
k&ouml;nnen auch Bilder mit <code>\includegraphics</code> eingebunden
werden. Dabei ist zu beachten, da&szlig; f&uuml;r die Kopf- und
Fu&szlig;zeile nur der durch <code>\headheight</code> bzw. 
<code>\footskip</code> angegebene Platz vorgesehen wird. Ist die Zeile
gr&ouml;&szlig;er, so erh&auml;lt man entsprechende Warnungen.



Hat man auf diese Weise den Aufbau definiert, so kann man ihn mit
<code>\pagestyle{fancy}</code> aktivieren.

<UL>
<li>Mit
  <code>\renewcommand{\headrulewidth}{&lt;gr&ouml;&szlig;e&gt;}</code>
  bzw.
  <code>\renewcommand{\footrulewidth}{&lt;gr&ouml;&szlig;e&gt;}</code>
  kann man die Dicke einer Linie zwischen Kopf- bzw. Fu&szlig;zeile
  und Text festlegen bzw. durch Angabe von <code>0pt</code> ausschalten.
</UL>

An einigen Stellen, z.B. bei <code>\part</code>, <code>\chapter</code>
und auch bei den diversen Funktionen, die diese Aufrufen
(<code>\tableofcontents</code>, <code>\listof[figures|tables]</code>,
<code>thebibliography</code>-Umgebung etc.) schaltet LaTeX mit
<code>\thispagestyle{plain}</code> auf Plain um. Daher m&ouml;chte man
<code>plain</code> umdefinieren. 
<UL><LI>Dazu gibt es <code>\fancypagestyle{}</code> Z.B.:
<br><code>
\fancypagestyle{plain}{%<BR>
&lt; code mit \fancyfoot{} etc &gt;<br>
}</code><br>
</LI></UL>

<H1><A HREF="#bsp1">Beispiele</A></H1>
Die Beispiele zeigen jeweils eine gerade und ungerade Seite.
<P>

<A NAME="bsp1"></A>
<IMG SRC="bsp1_2.png" ALT="Beispiel plain">
<IMG SRC="bsp1_3.png" ALT="Beispiel plain">
<A HREF="#bsp2">Bsp. 2</A>
<BR><A HREF="bsp1.pdf">pdf</A>, <A HREF="bsp1.ps">ps</A>

<P>
<A NAME="bsp2"></A>
<IMG SRC="bsp2_2.png" 
     ALT="Beispiel: Seitenzahlen aussen, &Uuml;berschriften innen ">
<IMG SRC="bsp2_3.png" 
     ALT="Beispiel: Seitenzahlen aussen, &Uuml;berschriften innen ">
<A HREF="#bsp3">Bsp. 3</A>
<A HREF="#bsp1">Bsp. 1</A>
<BR><A HREF="bsp2.pdf">pdf</A>, <A HREF="bsp2.ps">ps</A>

<P>
<A NAME="bsp3"></A>
<IMG SRC="bsp3_2.png"
     ALT="Beispiel: Namen der Felder">
<IMG SRC="bsp3_3.png"
     ALT="Beispiel: Namen der Felder">
<A HREF="#bsp4">Bsp. 4</A>
<A HREF="#bsp2">Bsp. 2</A>
<BR><A HREF="bsp3.pdf">pdf</A>, <A HREF="bsp3.ps">ps</A>

<P>
<A NAME="bsp4"></A>
<IMG SRC="bsp4_2.png" 
     ALT="Beispiel: Eigenes \sectionmark">
<IMG SRC="bsp4_3.png" 
     ALT="Beispiel: Eigenes \sectionmark">
<A HREF="#bsp5">Bsp. 5</A>
<A HREF="#bsp3">Bsp. 3</A>
<BR><A HREF="bsp4.pdf">pdf</A>, <A HREF="bsp4.ps">ps</A>

<P>
<A NAME="bsp5"></A>
<IMG SRC="bsp5_2.png" 
     ALT="Keine Linien">
<IMG SRC="bsp5_3.png" 
     ALT="Keine Linien">
<A HREF="#bsp6">Bsp. 6</A>
<A HREF="#bsp4">Bsp. 4</A>
<BR><A HREF="bsp5.pdf">pdf</A>, <A HREF="bsp5.ps">ps</A>

<P>
<A NAME="bsp6"></A>
<IMG SRC="bsp6_2.png" 
     ALT="Etwas andere \sectionmark-Definition">
<IMG SRC="bsp6_3.png" 
     ALT="Etwas andere \sectionmark-Definition">
<A HREF="#bsp7">Bsp. 7</A>
<A HREF="#bsp5">Bsp. 5</A>
<BR><A HREF="bsp6.pdf">pdf</A>, <A HREF="bsp6.ps">ps</A>

<P>
<A NAME="bsp7"></A>
<IMG SRC="bsp7_2.png" 
     ALT="H&ouml;here Kopfzeile &uuml;berdeckt Text">
<IMG SRC="bsp7_3.png" 
     ALT="H&ouml;here Kopfzeile &uuml;berdeckt Text">
<A HREF="#bsp8">Bsp. 8</A>
<A HREF="#bsp6">Bsp. 6</A>
<BR><A HREF="bsp7.pdf">pdf</A>, <A HREF="bsp7.ps">ps</A>

<P>
<A NAME="bsp8"></A>
<IMG SRC="bsp8_2.png" 
     ALT="H&ouml;here Kopfzeile; \headheight korrigiert">
<IMG SRC="bsp8_3.png" 
     ALT="H&ouml;here Kopfzeile; \headheight korrigiert">
<A HREF="#bsp9">Bsp. 9</A>
<A HREF="#bsp7">Bsp. 7</A>
<BR><A HREF="bsp8.pdf">pdf</A>, <A HREF="bsp8.ps">ps</A>

<P>
<A NAME="bsp9"></A>
<IMG SRC="bsp9_2.png" 
     ALT="Seitenzahlen aussen am Rand">
<IMG SRC="bsp9_3.png" 
     ALT="Seitenzahlen aussen am Rand">
<A HREF="#bsp10">Bsp. 10</A>
<A HREF="#bsp8">Bsp. 8</A>
<BR><A HREF="bsp9.pdf">pdf</A>, <A HREF="bsp9.ps">ps</A>

<P>
<A NAME="bsp10"></A>
<IMG SRC="bsp10_2.png" 
     ALT="Fuer Sonderanwendung: Kopfzeile erzeugt Fusszeile">
<IMG SRC="bsp10_3.png" 
     ALT="Fuer Sonderanwendung: Kopfzeile erzeugt Fusszeile">
<A HREF="#bsp1">Bsp. 1</A>
<BR><A HREF="bsp10.pdf">pdf</A>, <A HREF="bsp10.ps">ps</A>

<hr>


</BODY>
Hans Friedrich Steffani<BR>
Fre Dez 22 11:38:58 MET 2000
</HTML>