如何将当前部分名称添加到顶部?

如何将当前部分名称添加到顶部?

我正在尝试获取当前的部分名称并将其添加到右侧的标题。

\documentclass[12pt,french]{report}
\renewcommand\chaptername{Chapitre}
\renewcommand\appendixname{Annexe}

\let\@oldmakechapterhead\@makechapterhead
\def\@makechapterhead#1{%
\vspace*{10\p@}%
{\parindent \z@
{\reset@font
\usefont{OT1}{phv}{m}{n}
\LARGE\@chapapp~\thechapter\par\nobreak}%
\par\nobreak
\vspace*{30\p@}
\interlinepenalty\@M
\usefont{OT1}{ptm}{b}{n}
{\raggedright \Huge #1}%
\par\nobreak
\vskip 20\p@
\hrule height 1pt
\par\nobreak
\vskip 45\p@
}}
\rhead{\nouppercase\rightmark}
\begin{document}

\addtocontents{toc}{\protect\thispagestyle{empty}}

\chapter{ABC}

\end{document}

请问我如何获取当前章节名称并将其放入该行而不将其添加到目录、目录表和目录图形中?

答案1

如果我正确理解了您的问题,您正在尝试在内容页面上添加标题,但没有在 TOC、LOT、LOF 页面上添加相同的标题。

最好使用fancyhdr包来实现这一点,它将使常规页面具有您定义的页眉,同时将前言页和其他特殊页面(例如章节的第一页)保持为“普通”样式,即在底部仅显示页码。

这段代码给出了:

\documentclass[12pt,french]{report}
\usepackage{blindtext} % For example

\usepackage{fancyhdr}
\fancyhead{} % Clear the headers
\renewcommand{\headrulewidth}{0pt} % Width of line at top of page
\fancyhead[R]{\slshape\leftmark} % Mark right [R] of page with Chapter name [\leftmark]

\pagestyle{fancy} % Set default style for all content pages (not TOC, etc)

\begin{document}

\tableofcontents

%\chapter{ABC}
\blinddocument

\end{document}

输出:

第1页

第2页

第3页

相关内容