Titlesec ignoriert die Formatierung gerader und ungerader Seiten für Kapitel

Titlesec ignoriert die Formatierung gerader und ungerader Seiten für Kapitel

Ich versuche, das Erscheinungsbild der Kapitel je nachdem, ob sie auf einer geraden oder ungeraden Seite erscheinen, zu formatieren. Laut der Dokumentation von titlesec sollte es mit der Option page=evenund funktionieren page=odd. Dies funktioniert für Abschnitte, aber nicht für Kapitel. Hier ist ein MWE:

\documentclass[11pt,twoside]{report}
\usepackage[a4paper]{geometry}
\geometry{a4paper, top=22mm, left=45mm, right=25mm, bottom=30mm}
\usepackage{lipsum}
\usepackage[rigidchapters,explicit]{titlesec}
\titleformat{name=\section,page=odd}{}{ODD:}{.5em}{}
\titleformat{name=\section,page=even}{}{EVEN:}{.5em}{}
\begin{document}
\chapter{ChapterA}
\section{Section a} \lipsum[1-2]
\section{Section b} \lipsum[1-2]
\section{Section c} \lipsum[1-2]
\chapter{ChapterB}
\section{Section a} \lipsum[1-2]
\section{Section b} \lipsum[1-2]
\section{Section c} \lipsum[1-2]
\chapter{ChapterC}
\section{Section a} \lipsum[1-2]
\section{Section b} \lipsum[1-2]
\section{Section c} \lipsum[1-2]
\end{document} 

Wenn Sie beides \chapterim Titlesec-Befehl durch ersetzen \section, funktioniert es.

Gibt es dafür einen Grund? Wie kann ich \titleformatfür gerade und ungerade Seiten unterschiedliche Befehle verwenden?

Antwort1

Standardmäßig titlesecwird nicht viel an der Standardmethode zum Setzen von Kapitelüberschriften geändert, das heißt, es basiert weiterhin auf \@makechapterhead.

Sie müssen die Titelklasse neu deklarieren:

\documentclass[11pt,twoside]{report}
\usepackage[a4paper]{geometry}
\geometry{a4paper, top=22mm, left=45mm, right=25mm, bottom=30mm}

\usepackage[rigidchapters]{titlesec}
\usepackage{lipsum}

\titleclass{\chapter}{top}
\titleformat{name=\chapter,page=odd}{}{ODD:}{.5em}{}
\titleformat{name=\chapter,page=even}{}{EVEN:}{.5em}{}

\begin{document}

\chapter{ChapterA}
\section{Section a} \lipsum[1-2]

\chapter{ChapterB}
\section{Section a} \lipsum[1-2]

\end{document}

Bildbeschreibung hier eingeben

Antwort2

Ja, es scheint, dass die pageOption für nicht wirksam ist \chapter.

Sie können dies umgehen, indem Sie etwa Folgendes deklarieren:

\titleformat{name=\chapter}{\Huge}{\ifthenelse{\isodd{\thepage}}{ODD:}{EVEN:}}{.5em}{}

mit Hilfe \ifthenelsedes ifthenPakets.

MWE:

\documentclass[11pt,twoside]{report}
\usepackage[a4paper]{geometry}
\geometry{a4paper, top=22mm, left=45mm, right=25mm, bottom=30mm}
\usepackage{lipsum}
\usepackage[rigidchapters,explicit]{titlesec}
\usepackage{ifthen}
\titleformat{name=\section,page=odd}{}{ODD:}{.5em}{}
\titleformat{name=\section,page=even}{}{EVEN:}{.5em}{}
\titleformat{name=\chapter}{\Huge}{\ifthenelse{\isodd{\thepage}}{ODD:}{EVEN:}}{.5em}{}

\begin{document}
\chapter{ChapterA}
\section{Section A} \lipsum[1-2]
\chapter{ChapterB}
\section{Section B} \lipsum[1-2]
\chapter{ChapterC}
\section{Section C} \lipsum[1-2]
\end{document} 

Ausgabe (benötigt mindestens zwei Kompilierungen!)

Bildbeschreibung hier eingeben

verwandte Informationen