В memoir
классе, я хочу включить \part
в свою книгу. Я использовал код со стр. 78 руководства Memoir, немного подправив его, чтобы изменить вид заголовка \part
. Однако что-то заставляет \part
информацию не включаться в оглавление. %
Кажется, проблема в коде между . Итак, как мне получить нужное мне форматирование в тексте для заголовков частей и при этом включить части в оглавление?
\documentclass[letterpaper]{memoir}
\usepackage[utf8]{inputenc}
\usepackage{lipsum}
%%%%%%%%%%%
\renewcommand{\part}[1]{%
\cleardoublepage % start a new recto page
\beforepartskip % space before Name and Number
\midpartskip % space after Name and Number
\renewcommand*{\parttitlefont}{\centering\HUGE\normalfont}
\printparttitle{#1} % print the title
\partpageend
} % finish off
%%%%%%%%%%%
\renewcommand{\partpageend}{%
\afterpartskip
\normalsize
}
\begin{document}
\tableofcontents
\part{Test Part 1}
\chapter{Name}
\lipsum*[1]
\part{Test Part 2}
\lipsum*[1]
\end{document}
решение1
Похоже, вы хотите удалить «Часть I» со страницы части и нумерацию из оглавления.
\documentclass[letterpaper]{memoir}
\usepackage[utf8]{inputenc}
\usepackage{lipsum}
%%%%%%%%%%%
\renewcommand*{\parttitlefont}{\centering\HUGE\normalfont}
\renewcommand{\mempreaddparttotochook}{%
\global\chardef\keepsecnumdepth=\value{secnumdepth}%
\setcounter{secnumdepth}{-1000}%
}
\renewcommand{\mempostaddparttotochook}{%
\setcounter{secnumdepth}{\keepsecnumdepth}%
}
\renewcommand{\printpartname}{}
\renewcommand{\partnamenum}{}
\renewcommand{\printpartnum}{}
%%%%%%%%%%%
\begin{document}
\tableofcontents*
\part{Test Part 1}
\chapter{Name}
\lipsum*[1]
\part{Test Part 2}
\lipsum*[1]
\end{document}
Перед кодом, который выполняет задания, связанные с TOC, я установил secnumdepth
очень большое отрицательное значение; это подавляет нумерацию, но все равно добавляет часть в таблицу содержания. После этого счетчик сбрасывается на предыдущее значение.
Далее я переопределяю макросы, отвечающие за печать «Части I», чтобы они ничего не делали.
Не по теме, но я также добавил *
: \tableofcontents
Я не могу выносить строку «Содержание» сразу под заголовком «Содержание».