我正在尝试制作双面文档,其中章节名称位于偶数页的页眉中,而子章节名称位于奇数页的页眉中。我的章节开始的奇数页的页眉中不应有章节名称。所有这些在下面的代码中都可以很好地运行。
我的问题是它不适用于目录。如何才能禁用目录开始页面的页眉中“目录”的显示?参考书目部分也会出现同样的情况。
\documentclass[12pt,a4paper,twoside]{scrartcl}
\usepackage[automark, headsepline]{scrlayer-scrpage}
\ihead*{\pagemark}
\begin{document}
\begin{titlepage} Title
\end{titlepage}
\thispagestyle{empty}
\mbox{}
\newpage
\mbox{}
\tableofcontents
\newpage
\thispagestyle{empty}
\mbox{}
\newpage
\section{Section}
\subsection{Subsection 1}
\newpage
\subsection{Subsection 2}
\newpage
\mbox{}
\newpage
\end{document}
编辑:事实证明,我可以通过定义自定义页面样式并将其用于目录和参考书目的第一页来解决问题。特别是我定义了
\defpagestyle{mystyle}{{\headmark\hfill\pagemark}{\pagemark}{}}{}
这会生成一个不包含奇数页标头的页眉。
答案1
scrartcl
带有选项的双面文档中的部分automark
设置左侧标记并清除右侧标记。因此,文档中该页面上的第一个右侧标记为空,因此\headmark
此页面上为空。\tableofcontents
将左侧和右侧标记都设置为\contentsname
。因此,\headmark
MWE 中目录第一页上不为空。
plain
您可以在不应\headmark
在页眉中出现的页面上使用页面样式。
例子:
\documentclass[12pt,a4paper,twoside]{scrartcl}
\usepackage{blindtext}% only for dummy text
\usepackage[automark,headsepline,plainheadsepline]{scrlayer-scrpage}
\clearpairofpagestyles
\ohead{\headmark}
\ihead*{\pagemark}
\AddToHook{cmd/section/before}{%
\cleardoubleoddpage% start sections on odd pages
\thispagestyle{plain}% use page style plain on section pages
}
\begin{document}
\begin{titlepage} Title \end{titlepage}
\tableofcontents
\Blinddocument\Blinddocument\Blinddocument\Blinddocument
\Blinddocument\Blinddocument\Blinddocument\Blinddocument
\end{document}
评论:我建议使用scrreprt
或scrbook
。
例子:
\documentclass[12pt,a4paper,twoside,open=right]{scrreprt}
\usepackage{blindtext}% only for dummy text
\usepackage[automark,headsepline,plainheadsepline]{scrlayer-scrpage}
\clearpairofpagestyles
\ohead{\headmark}
\ihead*{\pagemark}
\begin{document}
\begin{titlepage} Title \end{titlepage}
\tableofcontents
\Blinddocument\Blinddocument\Blinddocument\Blinddocument
\Blinddocument\Blinddocument\Blinddocument\Blinddocument
\end{document}