ältestes Kapitel im Header anzeigen lassen Thema ist als GELÖST markiert

Layout von Seiten, Rändern, Fusszeilen, usw, modifizieren


Chris

ältestes Kapitel im Header anzeigen lassen

Beitrag von Chris »

Hallo,
ich benutze das fancyheadings-paket, um meine Kopf- und Fußzeilen zu gestalten. Hier wird in jedem Kopfbereich das aktuelle Kapitel notiert. Wird auf einer Seite ein Kapitel beendet und ein neues begonnen, steht im Kopfbereich immer das Kapitel, welches auf dieser Seite neu begonnen wird. Ich hätte gerne, dass dort das auf dieser Seite beendete Kapitel steht. Kann mir jemand weiterhelfen?

schon mal vielen Dank,

Chris

Benutzeravatar
KOMA
TeX-Entwickler
TeX-Entwickler
Beiträge: 2958
Registriert: Fr 4. Jul 2008, 17:28
Kontaktdaten:

Beitrag von KOMA »

fancyheadings ist seit Jahren überholt. Du solltest fancyhdr nehmen und http://www.golatex.de/wiki/index.php?ti ... albeispiel lesen. Zumindest mir geht es so, dass ich nicht die Zeit habe, zur Beantwortung von Fragen und die dafür notwendigen Experimente jedes Mal erst ein Beispiel zusammenzubauen.

Chris

np, hier mit minimalbeispiel

Beitrag von Chris »

ok, fancyhdr macht leider das selbe, hier das minimalbeispiel:
\documentclass[pdftex,a4paper]{scrartcl}

\usepackage{fancyhdr}
\pagestyle{fancy}

\begin{document}

\section{Erstes Kapitel}
Text 1

\section{Zweites Kapitel}
Text 2
 
\end{document}
rechts im Header steht nun "2 Zweites Kapitel", ich möchte hier jedoch "1 Erstes Kapitel" stehen haben. Kann mit jemand helfen?

Benutzeravatar
KOMA
TeX-Entwickler
TeX-Entwickler
Beiträge: 2958
Registriert: Fr 4. Jul 2008, 17:28
Kontaktdaten:

Beitrag von KOMA »

Aha, jetzt wird es klarer. Du hast nämlich gar keine Kapitel, sondern Abschnitte.

LaTeX bietet mit \leftmark und \rightmark zwei Anweisungen, um auf gesetzte Marken zuzugreifen. Diese beiden Anweisungen basieren wiederum auf TeXs \firstmark und \botmark. TeX bietet außerdem auch noch \topmark, was von LaTeX aber nicht verwendet wird. Anbei einmal ein Beispiel, das die unterschiedlichen Marken demonstriert. Dabei habe ich \leftmark und \rightmark mal in den Kopf gepackt und \topmark (enthält zwei Überschriften, kann aber auch leer sein) in den Fuß.
\documentclass[pagesize]{scrartcl} 
\usepackage{blindtext} 
\usepackage{scrpage2}
\automark[section]{section}
\pagestyle{scrheadings}
\chead{\leftmark --- \rightmark}% zum Vergleich
\ifoot{\topmark}% zum Vergleich
 
\begin{document} 
 
\section{Erster Abschnitt} 
\blindtext
 
\section{Zweiter Abschnitt} 
\blindtext[2]

\section{Dritter Abschnitt}
\blindtext[3]

\section{Vierter Abschnitt}
\blindtext

\section{F\"unfter Abschnitt}
\blindtext[5]

\end{document}
Wenn es Dir bereits genügt, auf die erste Abschnitts-Überschrift zuzugreifen, die auf der Seite gesetzt wird, dann kannst Du damit bereits eine Lösung basteln, indem Du eine der beiden Marken aus dem Kopf entfernst. Wenn nicht, musst Du Dir etwas auf Basis von \topmark ggf. mit Test darauf, ob das Ergebnis leer ist, basteln.

Einige Hintergründe über \rightmark, \firstmark und \botmark, die auch auf \topmark abstrahierbar sind, sind im KOMA-Script-Buch (beispielsweise in der 3. Auflage auf Seite 399f) zu finden.

Chris

Das hilft mir schon mal weiter

Beitrag von Chris »

Vielen Dank , so konnte ich eine zufriedenstellende Lösung erhalten. Ich hab zwar noch nicht herausgefunden, warum der Kopfbereich manchmal leer bleibt, aber das ist ok.

Danke nochmal, Chris

Antworten