Einschließen von Abschnittstiteln in Fancyhf-Header

Einschließen von Abschnittstiteln in Fancyhf-Header

Ich möchte den Abschnittsnamen des angezeigten Abschnitts der Seite in meine Header-Tags im fancyhdr-Paket aufnehmen, etwa so

\fancyhf[HR]{SECTION NAME}
\fancyhf[HL]{SUBSECTION NAME}

Wie kann ich dabei vorgehen?

Antwort1

titlepsbietet dies out-of-the-box und unterscheidet sich in der Benutzeroberfläche/Nutzung nicht wesentlich vonfancyhdrDas könnte Sie auch interessierentitlepsfür fancyhdrBenutzer.

Wenn Sie dies direkt mit tun möchten fancyhdr, müssen Sie die Abschnittseinheitskonstruktionen patchen, um die Titel zu speichern, oder die Titelmarkierungen mit etwas Massage verwenden.

Sie verwenden

\usepackage{titleps}% http://ctan.org/pkg/titleps
\newpagestyle{main}{
\setheadrule{.4pt}% Header rule
\sethead{\subsectiontitle}% left
        {}%                 center
        {\sectiontitle}%    right
}
\pagestyle{main}

Hier ist ein sehr minimales Beispiel, bei dem auch die Abschnittseinheitsnummer hinzugefügt wurde:

Bildbeschreibung hier eingeben

\documentclass{article}
\usepackage{titleps}% http://ctan.org/pkg/titleps
\newpagestyle{main}{
\setheadrule{.4pt}% Header rule
\sethead{\thesubsection\ \subsectiontitle}% left
        {}%                                 center
        {\thesection\ \sectiontitle}%       right
}
\pagestyle{main}
\begin{document}
\section{A section}
\subsection{A subsection}
\subsubsection{A subsubsection}
\end{document}

Antwort2

Ich verwende das fancyhdrPaket für diese Aufgabe. Normalerweise bereite ich mehrere neue Befehle vor, um die volle Kontrolle darüber zu haben, was in der Kopf- und Fußzeile angezeigt wird. Ich füge eine kleine Demonstration bei.

\documentclass[a4paper]{article}
\parindent=0pt
\usepackage{fancyhdr}
\pagestyle{fancy}
\fancyhf{}
\fancyhead[L]{\myleft}
\fancyhead[C]{\thepage}
\fancyhead[R]{\myright}
\def\tomyleft#1{\def\myleft{#1}}
\def\tomyright#1{\def\myright{#1}}
\def\mysection#1#2{\section{#1}\tomyleft{#2}}
\def\mysubsection#1#2{\subsection{#1}\tomyright{#2}}
\begin{document}
\mysection{Welcome}{My welcome\ldots}
\mysubsection{Hello World!}{\ldots My Hello World!}
My first page.\newpage 
My second page.
\end{document}

Seite 1

Seite 2

verwandte Informationen