Настройте заголовки на страницах содержания

Настройте заголовки на страницах содержания

введите описание изображения здесьВ моем документе класса книги заголовки глав есть только на страницах LE и RO, и я хочу, чтобы то же самое было и на страницах содержания. Я пробовал полностью удалить заголовки с помощью \makeatletter \let\@mkboth\relax \makeatotherи добавить \fancyhead[LE,RO]{\leftmark}, но это привело к тому, что слово Содержание появилось в верхнем регистре рядом с заголовком оглавления. Ниже приведен MWE, и добавлено изображение того, что я получаю:

\documentclass[a4paper,11pt]{book}
\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage{fancyhdr}
\usepackage{lipsum}% used to get dummy text
\begin{document}
\pagestyle{fancy}
\makeatletter
\let\@mkboth\relax
\makeatother
\tableofcontents%
\fancyhead[LE,RO]{\leftmark}
\cleardoublepage
\chapter{Chapter 1}
\section{Section 1.1}
\lipsum[1]% used to get dummy text
\cleardoublepage
\chapter{Chapter 2}
\section{Section 2.1}
\lipsum[2]% used to get dummy text
\chapter{Chapter 3}
\section{Section 3.1}
\lipsum[3]% used to get dummy text
\end{document}

Любая ссылка на решение приветствуется.

Тип заголовков, которые мне нужны для страниц содержания, за исключением первой страницы, как и во всех главах, показан на рисунке ниже:Примеры страниц содержания, которые мне нужны, кроме первой страницы

решение1

Редактироватьпосле комментария: Кажется, я наконец понял, на какой вопрос вы на самом деле хотите ответить.

Я использую fancyhdrзаголовки глав и разделов в заголовке. Однако для страниц оглавления заголовок главы "СОДЕРЖАНИЕ" отображается с обеих сторон заголовка, т.е. также как заголовок раздела. Как мне убрать его с одной стороны заголовка?

На это есть простой ответ: используйте \markright{}для очистки части заголовка "название раздела". Вы можете сделать это, обернув его в \addtocontents{toc}(чтобы он был сразу после вызова заголовка главы \markbothна первой странице содержания) и \AtBeginDocument(чтобы он был в первой "записи" в таблице содержания).

\documentclass[a4paper,11pt]{book}
\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage{fancyhdr}
\usepackage{lipsum}% used to get dummy text
\AtBeginDocument{\addtocontents{toc}{\protect\markboth{\textsl{CONTENTS}}{}}} 
\begin{document}
\pagestyle{fancy}
\tableofcontents%
\cleardoublepage
\chapter{Chapter 1}
\section{Section 1.1}
\lipsum[1]% used to get dummy text
\cleardoublepage
\chapter{Chapter 2}
\section{Section 2.1}
\lipsum[2]% used to get dummy text
\chapter{Chapter 3}
\section{Section 3.1}
\lipsum[3]% used to get dummy text
\end{document}

Заголовок со страницы 2:введите описание изображения здесь


Старый ответ:

Без какого-либо ручного вмешательства заголовок по умолчанию на последующих страницах оглавления имеет "СОДЕРЖАНИЕ" заглавными буквами слева и справа. Первая страница оглавления не имеет заголовка, как и все другие начальные страницы глав.

\documentclass[a4paper,11pt]{book}
\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage{fancyhdr}
\usepackage{lipsum}% used to get dummy text
\begin{document}
\pagestyle{fancy}
\tableofcontents%
\cleardoublepage
\chapter{Chapter 1}
\section{Section 1.1}
\lipsum[1]% used to get dummy text
\cleardoublepage
\chapter{Chapter 2}
\section{Section 2.1}
\lipsum[2]% used to get dummy text
\chapter{Chapter 3}
\section{Section 3.1}
\lipsum[3]% used to get dummy text
\end{document}

Заголовок со страницы 2:введите описание изображения здесь


Чтобы изменить то, что помещается в заголовок для страниц таблицы содержания, вам нужно вызвать, \markbothкоторый перезаписывает то, что уже было помещено туда заголовком таблицы содержания. Нет необходимости взламывать какие-либо другие команды, чтобы не вызывать \markbothили связанные команды, так как цель этих макросов на самом деле перезаписать то, что уже там есть. Так что вам на самом деле нужно только вызвать\markboth послезаголовок главы оглавления идопервый разрыв страницы, т.е. в идеале сразу после заголовка главы.

Вдохновленэтот ответ, я бы добавил \markbothвызов TOC в качестве первой записи (чтобы он вызывался сразу после заголовка главы). Чтобы убедиться, что это первая запись, можно использовать \AtBeginDocumentв преамбуле. Минимальный пример:

\documentclass[a4paper,11pt]{book}
\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage{fancyhdr}
\usepackage{lipsum}% used to get dummy text
\AtBeginDocument{\addtocontents{toc}{\protect\markboth{Contents}{\textnormal{More Contents}}}} 
\begin{document}
\pagestyle{fancy}
\tableofcontents%
\cleardoublepage
\chapter{Chapter 1}
\section{Section 1.1}
\lipsum[1]% used to get dummy text
\cleardoublepage
\chapter{Chapter 2}
\section{Section 2.1}
\lipsum[2]% used to get dummy text
\chapter{Chapter 3}
\section{Section 3.1}
\lipsum[3]% used to get dummy text
\end{document}

Заголовок со страницы 2:введите описание изображения здесь

Конечно, теперь вы захотите изменить это, чтобы получить точную формулировку и также стиль форматирования текста для заголовка, который вам нужен. Обратите внимание, что стиль по умолчанию (по крайней мере, в этом минимальном примере) — курсивный текст, поэтому вам может потребоваться его перезаписать.

Связанный контент