我正在使用 ShareLatex 的以下代码模板在报告的每一页上获取标题。
\usepackage{fancyhdr}
\pagestyle{fancy}
\fancyhf{}
\rhead{Share\LaTeX}
\lhead{Guides and tutorials}
\rfoot{Page \thepage}
但是当尝试创建目录时,此标题不会显示在我的目录页面上。
\tableofcontents
\newpage
我该怎么办?请注意,我对 LaTex 的了解非常有限。我需要一个易于定制的模板,这样我就可以直接将其复制粘贴到我的文档中。
答案1
您可能正在使用一个 documentclass,其中\tableofcontents
正在设置\pagestyle
。例如\documentclass{report}
,在 中\tableofcontents
调用\chapter
-command,后者又调用\thispagestyle{plain}
。
编辑:正如@essd 指出的那样,如果您有多页目录,我的旧答案将不起作用,因此我建议采用以下解决方法,重新定义普通样式:
\documentclass{report}
\usepackage{fancyhdr}
% Redefine plain style
\fancypagestyle{plain}{%
\fancyhf{} % clear all header and footer fields
\rhead[R]{Share\LaTeX}
\lhead[L]{Guides and tutorials}
\rfoot[R]{Page \thepage}
}
\pagestyle{plain}
\begin{document}
\tableofcontents
\clearpage
\section{A}
\end{document}
这样做的缺点是,您的报告想要将页面样式设置为的任何地方plain
都会有标题。要解决这个问题,您可以通过临时重新定义命令来采取一种相当临时的解决方法\chapter
:
\documentclass{report}
\usepackage{fancyhdr}
\pagestyle{fancy}
\fancyhf{}
\rhead{Share\LaTeX}
\lhead{Guides and tutorials}
\rfoot{Page \thepage}
\begin{document}
\bgroup % \bgroup and \egroup is so
% that the \chapter command gets
% defined to what it was before
\makeatletter
% HEADS UP! This approach would only work for the report class
\renewcommand\chapter{%
% Same definition as in report.cls, but without the
% \thispagestyle{plain} command
\if@openright\cleardoublepage\else\clearpage\fi%
\global\@topnum\z@%
\@afterindentfalse%
\secdef\@chapter\@schapter%
}
\makeatother
\tableofcontents
\egroup
\clearpage
\section{A}
\chapter{2, alif}
\end{document}
旧答案:
要解决这个问题,你只需要通过例如\thispagestyle{fancy}
在之后写入来覆盖它\tableofcontents
。
\documentclass{report}
\usepackage{fancyhdr}
\pagestyle{fancy}
\fancyhf{}
\rhead{Share\LaTeX}
\lhead{Guides and tutorials}
\rfoot{Page \thepage}
\begin{document}
\tableofcontents
\thispagestyle{fancy} %<- Add this right after \tableofcontents
\clearpage
\section{A}
\end{document}
答案2
如果页面样式的页眉和页脚plain
应该相同,则fancy
可以使用页面样式fancyplain
:
\documentclass{report}
\usepackage{blindtext}% only for dummy text
\usepackage{fancyhdr}
\pagestyle{fancyplain}% <- changed
\fancyhf{}
\fancyhead[R]{Share\LaTeX}
\fancyhead[L]{Guides and tutorials}
\fancyfoot[R]{Page \thepage}
\renewcommand\plainheadrulewidth{.4pt}% <- added
\begin{document}
\tableofcontents
\Blinddocument\Blinddocument\Blinddocument
\Blinddocument\Blinddocument\Blinddocument
\end{document}