Latex - 带有章节的标题(左 = 偶数页)和节 + 小节(右 = 奇数页)

Latex - 带有章节的标题(左 = 偶数页)和节 + 小节(右 = 奇数页)

我想将标题格式化如下:

左页: 左边:第十章,右边:章节名称

正确页面: 左边:小节,右边:子小节的名称,但前提是存在现有的子小节。

使用该fancyhdr软件包,我可以得到预期的章节和小节。但是如果我尝试使用\renewcommand \subsectionmark它,它会覆盖 rightmark。有没有简单的方法可以指向小节标题(例如定义变量或类似的东西)以及如何定义它仅在小节存在时出现(可能是案例结构)?

这是迄今为止的代码。

\documentclass[12pt, a4paper, ngerman, twocolumn, titlepage, intoc, BCOR=5mm]{scrbook}

\usepackage{fancyhdr}
\pagestyle{fancy}

\fancyhf{}
\renewcommand{\chaptermark}[1]{\markboth{#1}{#1}}
\renewcommand{\sectionmark}[1]{\markright{\thesection{~}{#1}}}


\rhead[subsectionname if subsection existing]{\leftmark}
\lhead[\rightmark]{\chaptername~\thechapter}
\lfoot[]{}
\cfoot[\thepage]{\thepage}
\rfoot[]{}

\usepackage{babel}
\usepackage{lipsum}

\begin{document}

\chapter{Wurst}
\lipsum
\lipsum
\section{Fleischwurst}
\lipsum
\lipsum
\subsection{Lyoner}
\lipsum
\lipsum

\end{document}

这是我得到的:

标题问题

希望大家能理解我的问题。提前致谢。

答案1

引用章节/节/小节等标题始终是个问题,只要它是可扩展的,否则\nameref{}就行了。我稍微重新定义了\chapter\subsection命令,将当前标题存储在\chaptertitle\subsectiontitle命令中,然后将其用作包\rohead中等命令的输入scrpage2

页眉的大部分直接设置fancyhdr也可以通过包来实现,但是,正如 KOMA 脚本手册所述,scrpage2与 KOMA 类结合使用效果更好,但这很自然,因为它scrpage2是 KOMA 包的一部分。

在我看来,摆弄headmark等等总是很乏味的。chaptermark

\documentclass[12pt, a4paper, ngerman, twocolumn, titlepage, intoc, BCOR=5mm]{scrbook}

%\usepackage{fancyhdr}
%\pagestyle{fancy}

%\fancyhf{}
%\renewcommand{\chaptermark}[1]{\markboth{#1}{#1}}
%\renewcommand{\sectionmark}[1]{\markright{\thesection{~}{#1}}}

%\rhead[subsectionname if subsection existing]{\leftmark}
%\lhead[\rightmark]{\chaptername~\thechapter}
%\lfoot[]{}
%\cfoot[\thepage]{\thepage}
%\rfoot[]{}


\usepackage{babel}
\usepackage{lipsum}

%%% My additions
\usepackage{etoolbox}
\usepackage{xcolor}%
\usepackage{scrpage2}%

\newcommand{\headseplinecolor}{blue}%

\pagestyle{scrheadings}%

\newcommand{\subsectiontitle}{}%

\makeatletter
\let\LaTeXStandardsubsection\subsection
\newcommand{\unstarred@@subsection@@noopt}[1]{%
  \unstarred@@subsection@@opt[#1]{#1}%
}%

\newcommand{\unstarred@@subsection@@opt}[2][]{%
  \renewcommand{\subsectiontitle}{#1}%
  \LaTeXStandardsubsection[#1]{#2}%
}%

\newcommand{\unstarredsubsection}{%
\@ifnextchar[{\unstarred@@subsection@@opt}{\unstarred@@subsection@@noopt}%
}%

\newcommand{\starredsubsection}[1]{%
\renewcommand{\subsectiontitle}{#1}%
\LaTeXStandardsubsection*{#1}%
}%

\renewcommand{\subsection}{%
\@ifstar{\starredsubsection}{\unstarredsubsection}%
}%
%%%%%

\newcommand{\sectiontitle}{}%


\let\LaTeXStandardsection\section
\newcommand{\unstarred@@section@@noopt}[1]{%
  \unstarred@@section@@opt[#1]{#1}%
}%

\newcommand{\unstarred@@section@@opt}[2][]{%
  \renewcommand{\sectiontitle}{#1}%
  \LaTeXStandardsection[#1]{#2}%
}%

\newcommand{\unstarredsection}{%
\@ifnextchar[{\unstarred@@section@@opt}{\unstarred@@section@@noopt}%
}%

\newcommand{\starredsection}[1]{%
  \renewcommand{\sectiontitle}{#1}%
  \LaTeXStandardsection*{#1}%
  \addcontentsline{toc}{section}{\protect\numberline{}#1}%
}%

\renewcommand{\section}{%
  \@ifstar{\starredsection}{\unstarredsection}%
}%

\newcommand{\chaptertitle}{}%

\makeatletter
\let\LaTeXStandardchapter\chapter
\newcommand{\unstarred@@chapter@@noopt}[1]{%
  \unstarred@@chapter@@opt[#1]{#1}%
}%

\newcommand{\unstarred@@chapter@@opt}[2][]{%
  \renewcommand{\chaptertitle}{#1}%
  \LaTeXStandardchapter[#1]{#2}%
}%

\newcommand{\unstarredchapter}{%
\@ifnextchar[{\unstarred@@chapter@@opt}{\unstarred@@chapter@@noopt}%
}%

\newcommand{\starredchapter}[1]{%
\renewcommand{\chaptertitle}{#1}%
\LaTeXStandardchapter*{#1}%
}%

\renewcommand{\chapter}{%
\@ifstar{\starredchapter}{\unstarredchapter}%
}%

\makeatother


\clearscrplain
\clearscrheadings
\lehead{\ifnumgreater{\number\value{section}}{0}{\sectiontitle}{}}%
\rehead{\ifnumgreater{\number\value{subsection}}{0}{\subsectiontitle}{}}%
\lohead{\chapapp~\thechapter}%
\rohead{\chaptertitle}%
\setheadsepline{2pt}[\color{\headseplinecolor}]

%%%%%%

\begin{document}
\tableofcontents
\chapter{Wurst}
\lipsum
\lipsum
\section{Fleischwurst}
\lipsum
\lipsum
\subsection{Lyoner}
\lipsum
\lipsum

\section{Salami}
\lipsum
\lipsum

\subsection{Chorizo}
\lipsum
\lipsum



\end{document}

正面页(右)

在此处输入图片描述

背面(左)

在此处输入图片描述

相关内容