Flip FancyHDR Headrule gerade ungerade

Flip FancyHDR Headrule gerade ungerade

Ich versuche, eine kurze Überblendung \headruleunter den Seitenzahlen zu erreichen. Aber ich kann nicht herausfinden, wie ich es auf geraden/ungerade Seiten „umdrehen“ kann. Weiß jemand, wie das geht?

Ich erhalte außerdem eine Warnung, dass der headheightzu klein ist. Dies wird durch den verursacht tikzpicture, aber wie kann ich das beheben? Ich möchte den nicht headheightum so viel erhöhen ...

\documentclass[11pt, titlepage, openright]{book}

\usepackage[textwidth=13cm, left=2.5cm, bottom=2cm, top=2.5cm, paperwidth=20cm, paperheight=27cm, layoutwidth=19cm, layoutheight=26cm, layouthoffset=0.5cm, layoutvoffset=0.5cm, showcrop, asymmetric]{geometry}
\usepackage{fancyhdr}
\usepackage{tikz}
\usepackage{lipsum}

\pagestyle{fancy}
\renewcommand{\chaptermark}[1]{\markboth{#1}{}}
\fancyhead{}
\fancyfoot{}

\definecolor{grey}{rgb}{0.6,0.6,0.6}
\definecolor{darkgrey}{rgb}{0.4,0.4,0.4}

\setlength{\headheight}{24pt}
\fancyhead[RO]{\sffamily\bfseries\textcolor{grey}\leftmark\hspace{0.3cm}\sffamily\textcolor{darkgrey}\thepage}
\fancyhead[LE]{\sffamily\bfseries\textcolor{darkgrey}\thepage\hspace{0.3cm}\sffamily\textcolor{grey}\leftmark}
\renewcommand{\headrulewidth}{0.6pt}
\renewcommand{\footrulewidth}{0pt}
\renewcommand{\headrule}{
\begin{tikzpicture}
    \shade[white] (0,0) rectangle (8,0);
    \shade[left color=white, right color=black, dashed] (8,1) rectangle (12.98,1.01);
\end{tikzpicture}}

\begin{document}

\chapter{Test chapter}
\lipsum
\lipsum

\end{document}

Antwort1

\count0In Standard-LaTeX wird die Prüfung auf linke/rechte Überschriften auf den Wert von via angewendet \ifodd. Sie können dies in Ihrem \headruleBefehl verwenden, um auf den beiden Seiten unterschiedliche Bilder einzustellen.

Durch das Hinzufügen einer headheightOption zu Ihrer geometrySpezifikation wird mehr Platz geschaffen. Verwenden Sie den in der Protokolldatei gemeldeten Wert.

Sie sagen jedoch in Ihrer Frage, dass Sie das nicht tun möchten. Der Grund, warum Ihre Kopfzeile so hoch ist, liegt darin, dass Sie versuchen, sie nach oben zu verschieben, indem Sie etwas Leeres in Höhe 0und die Regel in Höhe zeichnen 1. Einfacher ist es, nur die Regel zu zeichnen und sicherzustellen, dass sie durch einige vertikale Sprünge richtig positioniert ist.

Beispiel einer geraden Seite

Beispiel für eine ungerade Seite

\documentclass[11pt, titlepage, openright]{book}

\usepackage[textwidth=13cm, left=2.5cm, bottom=2cm, top=2.5cm,
paperwidth=20cm, paperheight=27cm, layoutwidth=19cm,
layoutheight=26cm, layouthoffset=0.5cm, layoutvoffset=0.5cm,
showcrop, asymmetric]{geometry}
\usepackage{fancyhdr}
\usepackage{tikz}
\usepackage{lipsum}

\pagestyle{fancy}
\renewcommand{\chaptermark}[1]{\markboth{#1}{}}
\fancyhead{}
\fancyfoot{}

\definecolor{grey}{rgb}{0.6,0.6,0.6}
\definecolor{darkgrey}{rgb}{0.4,0.4,0.4}

\setlength{\headheight}{24pt}
\fancyhead[RO]{\sffamily\bfseries\textcolor{grey}\leftmark\hspace{0.3cm}\sffamily\textcolor{darkgrey}\thepage}
\fancyhead[LE]{\sffamily\bfseries\textcolor{darkgrey}\thepage\hspace{0.3cm}\sffamily\textcolor{grey}\leftmark}
\renewcommand{\headrulewidth}{0.6pt}
\renewcommand{\footrulewidth}{0pt}

\renewcommand{\headrule}{%
\vskip-\baselineskip\vskip4pt
\ifodd\count0\hfill\begin{tikzpicture}
    \shade[left color=white, right color=black, dashed] (0,0) rectangle (4.98,0.01);
\end{tikzpicture}\else\begin{tikzpicture}
    \shade[left color=black, right color=white, dashed] (0,0) rectangle (4.98,.01);
\end{tikzpicture}\fi}

\begin{document}

\chapter{Test chapter}
\lipsum
\lipsum

\end{document}

Antwort2

Das geht mit dem etoolboxPaket:

\documentclass[11pt, titlepage, openright]{book}

\usepackage[textwidth=13cm, left=2.5cm, bottom=2cm, top=2.5cm, paperwidth=20cm, paperheight=27cm, layoutwidth=19cm, layoutheight=26cm, layouthoffset=0.5cm, layoutvoffset=0.5cm, showcrop, asymmetric]{geometry}
\usepackage{fancyhdr}
\usepackage{tikz}
\usepackage{lipsum}

\pagestyle{fancy}
\renewcommand{\chaptermark}[1]{\markboth{#1}{}}
\fancyhead{}
\fancyfoot{}

\definecolor{grey}{rgb}{0.6,0.6,0.6}
\definecolor{darkgrey}{rgb}{0.4,0.4,0.4}%
\usepackage{etoolbox}
\setlength{\headheight}{24pt}
\fancyhead[RO]{\sffamily\bfseries\textcolor{grey}\leftmark\hspace{0.3cm}\sffamily\textcolor{darkgrey}\thepage}
\fancyhead[LE]{\sffamily\bfseries\textcolor{darkgrey}\thepage\hspace{0.3cm}\sffamily\textcolor{grey}\leftmark}
\renewcommand{\headrulewidth}{0.6pt}
\renewcommand{\footrulewidth}{0pt}

\renewcommand{\headrule}{%
\begin{tikzpicture}%
\ifnumodd{\value{page}}{%
 \shade[white] (0,0) rectangle (8,0);
    \shade[left color=white, right color=black, dashed] (8,1) rectangle (12.98,1.01);
}%
{%
 \shade[white] (0,0) rectangle (5,0);
 \shade[left color=black, right color=white, dashed] (0,1) rectangle (4.98,1.02);
 }
\end{tikzpicture}
}%

\begin{document}

\chapter{Test chapter}
\lipsum
\lipsum

\end{document} 

Bildbeschreibung hier eingeben

Bildbeschreibung hier eingeben

Antwort3

Sie können Ihren \fancyheadInhalt hineinlegen nodeund dann wird das Zeichnen zum Kinderspiel.

\fancyhead[RO]{%
  \begin{tikzpicture}
    \node[inner xsep=0pt, align=right,text width=5cm] (a) {\sffamily\bfseries\textcolor{grey}
             {\leftmark}\hspace{0.3cm}\sffamily\textcolor{darkgrey}{\thepage}};
    \shade[left color=white, right color=black, dashed] (a.south west) rectangle
            ([yshift=0.01cm]a.south east);
  \end{tikzpicture}%
  }
\fancyhead[LE]{%
  \begin{tikzpicture}
    \node[inner xsep=0pt, align=left,text width=5cm](a){\sffamily\bfseries\textcolor{darkgrey}
     {\thepage}\hspace{0.3cm}\sffamily\textcolor{grey}{\leftmark}};
    \shade[right color=white, left color=black, dashed] (a.south west) rectangle
            ([yshift=0.01cm]a.south east);
  \end{tikzpicture}%
  }

Code:

\documentclass[11pt, titlepage, openright]{book}

\usepackage[textwidth=13cm, left=2.5cm, bottom=2cm, top=2.5cm, paperwidth=20cm, paperheight=27cm, layoutwidth=19cm, layoutheight=26cm, layouthoffset=0.5cm, layoutvoffset=0.5cm, showcrop, asymmetric,headheight=24pt]{geometry}
\usepackage{fancyhdr}
\usepackage{tikz}
\usepackage{lipsum}

\pagestyle{fancy}
\renewcommand{\chaptermark}[1]{\markboth{#1}{}}
\fancyhead{}
\fancyfoot{}

\definecolor{grey}{rgb}{0.6,0.6,0.6}
\definecolor{darkgrey}{rgb}{0.4,0.4,0.4}

%\setlength{\headheight}{24pt}
\fancyhead[RO]{%
  \begin{tikzpicture}
    \node[inner xsep=0pt, align=right,text width=5cm] (a) {\sffamily\bfseries\textcolor{grey}
             {\leftmark}\hspace{0.3cm}\sffamily\textcolor{darkgrey}{\thepage}};
    \shade[left color=white, right color=black, dashed] (a.south west) rectangle
            ([yshift=0.01cm]a.south east);
  \end{tikzpicture}%
  }
\fancyhead[LE]{%
  \begin{tikzpicture}
    \node[inner xsep=0pt, align=left,text width=5cm](a){\sffamily\bfseries\textcolor{darkgrey}
     {\thepage}\hspace{0.3cm}\sffamily\textcolor{grey}{\leftmark}};
    \shade[right color=white, left color=black, dashed] (a.south west) rectangle
            ([yshift=0.01cm]a.south east);
  \end{tikzpicture}%
  }
\renewcommand{\headrulewidth}{0pt}
\renewcommand{\footrulewidth}{0pt}


\begin{document}

\chapter{Test chapter}
\lipsum
\lipsum

\end{document}

Bildbeschreibung hier eingeben

Bildbeschreibung hier eingeben

verwandte Informationen