
Недавно я конвертировал документ из book
в memoir
. Оказывается, это sectsty
несовместимо. Раньше у меня было так:
\usepackage{sectsty}
\allsectionsfont{\color{blue}}
что очень удобно изменило все цвета заголовков разделов, включая главы, разделы и подразделы. Какой самый близкий я могу получить для memoir
?
решение1
Класс memoir
предоставляет множество хуков для выполнения такого рода действий, но главы и разделы обрабатываются по-разному. Макрос \printchaptername
выводит имя главы. Поскольку мы не хотим переопределять его, я использовал макрос, \addtodef
чтобы добавить \color
макрос к его определению, оставив остальное без изменений.
В зависимости от того, как вы хотите, чтобы выглядело оглавление, есть два разных макроса, которые можно изменить. Если вы хотите изменить только заголовок TOC, \addtoiargdef
используется другой макрос исправления, поскольку этот макрос принимает аргумент и не может быть исправлен с помощью addtodef
.
Для форматирования раздела есть пустой хук для каждого уровня секционирования, который изначально установлен на {}
. Есть макрос \setSstyle
(где S
обозначает уровень секционирования ( sec
, subsec
, subsubsec
).
\documentclass{memoir}
\usepackage{xcolor}
\addtodef{\printchaptername}{\color{blue!50!black}}{}
\addtodef{\tocheadstart}{\color{blue!50!black}}{} % If you want the whole TOC to be blue also
%\addtoiargdef{\printtoctitle}{\color{blue!50!black}}{} % If you just want the TOC title blue
\setsecheadstyle{\color{blue!50!black}}
\setsubsecheadstyle{\color{blue!50!black}}
\begin{document}
\frontmatter
\tableofcontents*
\mainmatter
\chapter{A chapter}
\section{A section}
\subsection{A subsection}
\appendix
\chapter{An appendix}
\section{A section}
\subsection{A subsection}
\end{document}