LaTeX: individuelle Kopf- und Fußzeilen

Update: Von diesem Artikel gibt es mittlerweile eine überarbeitete Variante, welche die Verwendung des moderneren scrlayer-scrpage Pakets beschreibt.

Heute gibt es wieder ein Beitrag zum LaTeX Einsteiger-Kurs: „LaTeX – gleich setzt's was!” Dabei soll es um das individuelle Gestalten von Kopf- und Fußzeilen gehen.

Welche Möglichkeiten bietet uns LaTeX zum Setzen von Kopf- und Fußzeilen? Prinzipiell finden wir sechs Platzhalter vor, welche wir mit Inhalt bestücken können. Es ist möglich in der Kopfzeile innen, mittig und außen Inhalt zu plazieren, für die Fußzeile verhält sich dies äquivalent. Wir sprechen von innen und außen statt von links und rechts, da sich bei doppelseitigem Satz der breitere Rand abwechselnd links und rechts befindet, also immer außen. Bei einseitigen Dokumenten wollen wir den rechten Seitenrand mit außen und den linken mit innen bezeichnen. Neben den Platzhaltern können wir aber auch Linien über und unter die Kopf- bzw. Fußzeile setzen.

Skizze einseitiges- und zweiseitiges Dokument

 

Paket laden

Um nun individuellen Kopf- und Fußzeilen zu setzen, muss das Paket scrpage2 geladen werden. Wir wählen auch gleich noch den Seitenstil scrheadings aus, wodurch LaTeX mitgeteilt wird, dass Kopf- und Fußzeilen mit dem scrpage2-Paket gesetzt werden sollen. Der Befehl \clearscrheadfoot leert alle sechs Platzhalter, so dass wir sie anschließend nach unseren Vorstellungen „befüllen” können.

\usepackage{scrpage2}
\pagestyle{scrheadings}
\clearscrheadfoot

 

Inhalt positionieren

Um die Platzhalter nun mit Inhalt zu befüllen, gibt es sechs verschiedene Befehle:

\ihead{Kopfzeile innen}
\chead{Kopfzeile Mitte}
\ohead{Kopfzeile außen}
\ifoot{Fußzeile innen}
\cfoot{Fußzeile Mitte}
\ofoot{Fußzeile außen}

Dabei sind die vorstehenden sechs Befehle optional. Wenn man zum Beispiel nur etwas in die Fußzeile innen und außen setzen möchte, so werden nur die Befehle \ifoot und \ofoot benötigt.

 

Automatische Seitenzahlen und Kolumnentitel

Zum Einfügen der aktuellen Seitenzahl wird der Befehl \pagemark benötigt. Wenn die Seitenzahlen zum Beispiel in der Fußzeile außen ausgegeben werden sollen, so wird folgendes notiert:

\ofoot{\pagemark}

Wenn wir die Kolumnentitel wie Chapter, Section oder Subsection automatisch in Kopf- oder Fußzeile anzeigen möchten, so wird es etwas komplizierter. Mit Hilfe des Befehls \headmark wird der aktuelle Kolumnentitel eingefügt.

\ohead{\headmark}

Mit der vorstehenden Codezeile wird so zum Beispiel der aktuelle Kolumnentitel in der Kopfzeile außen ausgegeben.
Allerdings müssen wir LaTeX noch mitteilen, was als Kolumnentitel ausgegeben werden soll. Wir wollen dies zuerst für doppelseitige Dokumente betrachten.

\automark[rechte Seite]{linke Seite}

Mit dem Befehl \automark legen wir fest, was bei einem doppelseitigen Dokument mit \headmark auf den linken Seiten und was mit \headmark auf den rechten Seiten ausgegeben wird. Dabei können folgende Argumente verwendet werden: chapter, section, subsection, paragraph und subparagraph.
Soll zum Beispiel bei einem doppelseitigen Dokument auf den linken Seiten in der Kopfzeile außen die aktuelle Section und auf den rechten Seiten die jeweilige Subsection ausgegeben werden, so ist folgendes zu notieren:

\ohead{\headmark}
\automark[subsection]{section}

Betrachten wir nun die einseitigen Dokumente. Wir benötigen wieder den Befehl \automark, um LaTeX mitzuteilen, welche Kolumnentitel mit \headmark ausgegeben werden sollen. Allerdings kann auf das optionale Argument verzichtet werden, da es ja nur einen Seitentyp gibt.
Soll zum Beispiel bei einem einseitigen Dokument in der Kopfzeile rechts jeweils die aktuelle Section angezeigt werden, so ist folgendes zu notieren:

\ohead{\headmark}
\automark{section}

 

Linien

Wie bereits erwähnt, ist es möglich Linien über und unter die Kopf- und Fußzeilen zu setzen. Dafür müssen die jeweiligen Linien einzeln aktiviert werden. Dem Paket scrpage2 werden dazu die folgenden optionalen Argumente übergeben:

headtopline  –  zum aktivieren der Linie über der Kopfzeile
headsepline  – zum aktivieren der Linie unter der Kopfzeile
footsepline  – zum aktivieren der Linie über der Fußzeile
footbotline  – zum aktivieren der Linie unter der Fußzeile

Wenn wir zum Beipiel eine Linie unter der Kopfzeile und eine über der Fußzeile setzen möchten, so ist folgendes zu notieren:

\usepackage[headsepline,footsepline]{scrpage2}

Sollen die Linien eine vom Standard abweichende Dicke erhalten, so werden die Befehle \setheadtopline, \setheadsepline, \setfootsepline und \setfootbotline verwendet.
Um zum Beispiel eine 2pt starke Linie über der Kopfzeile und eine 0.5pt starke Linie unter der Kopfzeile zu setzen, ist folgendes zu notieren:

\usepackage[headtopline,headsepline]{scrpage2}
\setheadtopline{2pt}
\setheadsepline{.5pt}

 

Weitere Optionen

Neben den bereits erwähnten Möglichkeiten bietet LaTeX und das Paket scrpage2 natürlich noch viele weitere Möglichkeiten, um individuelle Kopf- und Fußzeilen zu gestalten. Informationen dazu finden sich zum Beispiel in: KOMA-Script – Die Anleitung.

  28.12.11 um 0:19 Uhr
  LaTeX
nächster Artikel:
5 Jahre escape now!
auch lesen:
vorheriger Artikel:
Drei Tage weg
auch lesen:

Kommentare

Lea G.
schrieb am 25.04.15 um 10:29 Uhr:

Danke für die tolle Erklärung!! Sie war sehr gut strukturiert und hat mir weitergeholfen. Vielen Dank

myp
schrieb am 07.06.15 um 19:35 Uhr:

Einfach erklärt, gut strukturiert, nicht zu viel und nicht zu wenig Information!
Tausend Dank dafür!

Clemse
schrieb am 13.11.15 um 10:30 Uhr:

Sehr gute Anleitung, habe mich super zurecht gefunden. Man hat innerhalb von wenigen Minuten die Kopf und Fußzeilen nach eigenem Wunsch angepasst.

Allerdings funktioniert der Link zu "KOMA-Script - Die Anleitung" am Ende deines Artikels nicht mehr.

der B.
schrieb am 18.11.15 um 20:13 Uhr:

@Clemse: Vielen Dank für den Hinweis, ist gefixt.

Yve
schrieb am 21.01.16 um 14:00 Uhr:

Hallo,
erst mal danke für die einfache Beschreibung. Leider habe ich das Problem, dass die Kopfzeile zwar angezeigt wird wenn ich in die main datei etwas schreibe, sobald ich aber ein Kapitel über \include reinbringe, klappt das mit der Kopfzeile leider nicht mehr.
Vielleicht kannst du mir ja einen Tipp geben, wie ich das in den Griff bekommen kann.
LG

Yve
schrieb am 21.01.16 um 14:15 Uhr:

hier noch mein Code

\documentclass[a4paper,12pt,oneside]{scrbook}
\usepackage[headsepline]{scrpage2}
\usepackage[english,ngerman]{babel}
\usepackage[latin1]{inputenc}
\usepackage[T1]{fontenc}
\usepackage[left=3cm,top=2.5cm,right=3cm,bottom=2.5cm]{geometry}
\usepackage{hyperref}

\begin{document}
\begin{titlepage}
\include{Titelseite}
\end{titlepage}

\pagenumbering{roman}
\pagestyle{plain}
\tableofcontents

\clearscrheadfoot
\ohead{\headmark}
\automark {chapter}
\cfoot{\pagemark}
\clearpage
\pagenumbering{arabic}
\pagestyle{scrheadings}
test
\include{Einleitung}
\end{document}

Die Seite mit "test" wird richtig angezeigt, die Eingefügte "Einleitung" leider nicht

der B.
schrieb am 21.01.16 um 21:02 Uhr:

@Yve: Sämtliche Befehle aus diesem Artikel gehören in die Präambel des LaTeX-Files, also zwischen \documentclass und \begin{document}. Dann klappt das auch mit den Kopf- und Fußzeilen auf allen Seiten ;-)

Yve
schrieb am 21.01.16 um 21:19 Uhr:

Danke für die Antwort. Das war zwar nicht die Lösung aber mittlerweile habe ich rausgefunden woran es lag. Ich habe einen Tipp bekommen, dass es an den chapterstyle einstellungen liegt und tatsächlich hat der Befehl \renewcommand*{\chapterpagestyle}{scrheadings}
dafür gesorgt das jetzt alles läuft.

Jan
schrieb am 14.03.16 um 13:53 Uhr:

Hallo,

mein LaTeX-Vorspann:

\usepackage[hang]{footmisc}
\setlength{\footnotemargin}{0.5em}
\setcounter{page}{-1}
\usepackage{scrpage2}
\pagestyle{scrheadings}
\clearscrheadfoot
\ofoot{\pagemark}

nun hbe ich unter LyX das Problem, dass auf der ersten Seite nach dem Inhaltsverzeichnis keine Seitenzahl angegeben wird. Wisst ihr wie das Problem behoben werden kann.

Vielen Dank vom LyX-Anfänger

Jan
schrieb am 14.03.16 um 14:38 Uhr:

Ergänzung: Das Problem betrifft die dritte Seite...

der B.
schrieb am 14.03.16 um 19:05 Uhr:

Hallo Jan,
der von dir gepostete Code hat auf den ersten Blick nichts mit deinem Problem zu tun, es fehlt allerdings auch der entscheidende Teil. Erstelle mal ein Minimalbeispiel (siehe http://www.golatex.de/wiki/Minimalbeispiel) für dein Problem, dann kann ich dir weiter helfen ;-)

Jan
schrieb am 14.03.16 um 19:43 Uhr:

Hallo,

vielen Dank für die schnelle Antwort. Der Fehler tritt nur auf, wenn ich die erste Seite als "Titel" markiere. Im folgenden die Daten. Hoffentlich habe ich nichts wichtiges gelöscht. ;)

Vielen Dank
Jan


\documentclass[12pt,ngerman]{article}
\usepackage[T1]{fontenc}
\usepackage[latin9]{inputenc}
\usepackage{geometry}
\geometry{verbose,lmargin=3cm,rmargin=4cm}
\setcounter{secnumdepth}{4}
\setcounter{tocdepth}{5}
\setlength{\parindent}{0bp}
\usepackage{setspace}
\onehalfspacing
\makeatletter
\@ifundefined14.03.16{}{\date{}}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% User specified LaTeX commands.
\usepackage[hang]{footmisc}
\setlength{\footnotemargin}{0.5em}
\setcounter{page}{-1}
\usepackage{scrpage2}
\pagestyle{scrheadings}
\clearscrheadfoot
\ofoot{\pagemark}
\makeatother
\usepackage{babel}
\begin{document}
\title{{\Large{}Da steht der Titel }\thispagestyle{empty}\newpage{}\thispagestyle{empty}{\small{}\tableofcontents{}}\thispagestyle{empty}\newpage{}}
\maketitle
\section{Platzhalter}
\subsection{Platzhalter}
\noindent
\section*{Platzhalter}
\addcontentsline{toc}{section}{Platzhalter}
\section*{Platzhalter}
\addcontentsline{toc}{section}{Platzhalter}
\end{document}

der B.
schrieb am 14.03.16 um 19:56 Uhr:

Hallo Jan,
schau dir mal den folgenden abgeänderten Code-Ausschnitt an, damit sollte es funktionieren:

\begin{document}
% Titelseite
\title{{\Large{}Da steht der Titel }}
\thispagestyle{empty}
\maketitle
\newpage
% Inhaltsverzeichnis auf neuer Seite
\thispagestyle{empty}
\tableofcontents
\newpage
% Inhalt
\section{Platzhalter}
...
\end{document}

Jan
schrieb am 15.03.16 um 9:28 Uhr:

Vielen Dank

jetzt funktionierts :)

André
schrieb am 04.05.16 um 10:56 Uhr:

Nach langem Suchen endlich eine brauchbare Beschreibung gefunden um Kopf und Fußzeile individuell anzupassen.

Herzlichen dank.

Tom
schrieb am 13.06.16 um 1:23 Uhr:

Vielen Dank !

Michael
schrieb am 13.06.16 um 16:33 Uhr:

Hallo!

Wie gibt man denn an, dass man entweder \section oder aber \section* angezeigt bekommen möchte?

Ich habe ein Dokument bei dem die Ausarbeitung natürlich numeriert ist, aber Literaturverzeichnis, Tabellen und Abbildungsverzeichnis und Eigenständigkeitserklärung unnumeriert sein sollen (also als \section* gesetzt wurden) aber trotzdem in der Kopfzeile angezeigt werden, sodass nicht "6 Zusammenfassung", die letzte echte section in der Kopfzeile steht.

ich hoffe das ist auch ohne minimalbeispiel verständlich!

Johanna
schrieb am 31.08.16 um 9:46 Uhr:

Vielen Dank für die super Erklärung.
Simpel, strukturiert und gut erklärt!

Magda
schrieb am 16.03.17 um 13:22 Uhr:

Super Seite! Vielen Dank!
Kann man sich über automark auch part anzeigen lassen? Das ist mir bisher nicht gelungen.

der B.
schrieb am 17.03.17 um 14:20 Uhr:

@Magda: Schön, wenn der Artikel hilft :-)
Das mit part scheint wohl nicht vollumfänglich zu klappen – in der Dokumentation steht: „Der Wert part führt bei Verwendung der meisten Klassen nicht zu dem gewünschten Ergebnis. Bisher ist nur von den KOMA-Script-Klassen ab Version 2.9s bekannt, dass dieser Wert unterstützt wird.“
Mit der Dokumentklasse scrartcl klappt es in meinem Testdokument, allerdings ist part nicht für scrartcl gedacht sondern für scrbook und dort will es nicht so recht.
Mir ist aber gerade aufgefallen, dass das Paket scrpage2 mittlerweile veraltet ist und jetzt statt dessen scrlayer-scrpage verwendet werden soll (aktuelle Dokumentation: http://texdoc.net/texmf-dist/doc/latex/koma-script/scrguide.pdf). Ich glaub da ist mal ein neuer Blog-Artikel fällig ...

Magda
schrieb am 20.03.17 um 10:23 Uhr:

Großartig! Vielen Dank! Das hat auf Anhieb funktionert :-)

Marvin
schrieb am 18.09.17 um 10:42 Uhr:

Hallo,

was ist notwendig, um auf einem einseitigen Dokument zwei Argumente an einer Position darzustellen. Bisher verwende ich folgenden Code:

\ohead{\headmark}
\automark{paragraph}

Ich würde gern noch ein weiteres Argument hinzufügen und am besten einen Doppelpunkt zwischen die Argumten setzen.


Über Unterstützung würde ich mich sehr freuen.

der B.
schrieb am 19.09.17 um 21:25 Uhr:

Hallo Marvin,
dafür ist das Paket scrpage2 nicht ausgelegt. Komplett individualisierte Kopf- und Fußzeilen kannst du mit dem Paket fancyhdr (siehe https://www.ctan.org/pkg/fancyhdr) erstellen, das ist allerdings auch ein klein wenig aufwendiger ;-)

Marvin
schrieb am 20.09.17 um 16:04 Uhr:

Hallo,

danke für den Hinweis. Es war aufwendiger als mit scrpage2, aber dafür habe ich jetzt mein Ziel erreicht.

Danke!

Alexandra A.
schrieb am 10.01.18 um 12:53 Uhr:

Vielen Dank für diese ausführliche Anleitung!
Hat mir sehr weitergeholfen.

Kommentar verfassen





optional, wird nicht veröffentlicht

optional

Bitte rückwärts eingeben!