Рассмотрим следующий MWE:
\documentclass{book}
\usepackage{fancyhdr}
\usepackage{lipsum}
\title{Test}
\author{Me}
\date{\today}
\begin{document}
\maketitle
\tableofcontents
\chapter{$1+1=2$} % normal face everywhere
\lipsum[1-5]
\chapter{$\mathbf{1+1=2}$} % bold face everywhere
\lipsum[5-10]
\chapter[$4+4=8$]{$\mathbf{4+4=8}$} % bold face in title, normal face in toc and header
\lipsum[10-15]
\end{document}
Все три главы имеют в своих названиях слово «математика». Естественно, я хочу, чтобы они вели себя хорошо, то есть,
- жирный шрифт при печати на титульном листе главы,
- жирным шрифтом, если он напечатан в оглавлении,
- обычный шрифт при печати в заголовке.
Первые два условия легко выполнить, используя \mathbf
в заголовках глав (как это сделано для второй главы), но тогда жирный шрифт также появляется в заголовке. При использовании обычного шрифта в необязательном аргументе заголовка он также исчезает из строки в оглавлении.
Как можно добиться правильного поведения полужирного/нормального шрифта для математических символов в заголовках глав при использовании book
класса документа и fancyhdr
?
решение1
Используйте \protect\boldmath
в \chaper
заголовке (так как это движущийся аргумент) и установите \let\boldmath\relax
как часть вашегоfancyhdr
строительство:
\documentclass{book}
\usepackage{amsfonts,fancyhdr,lipsum}
\pagestyle{fancy}
\fancyhf{}% Clear header/footer
\renewcommand{\headrulewidth}{0pt}% Remove header rule
\fancyhead[LE,RO]{\thepage}
\fancyhead[RE,LO]{\let\boldmath\relax\leftmark}
\begin{document}
\tableofcontents
\chapter{\protect\boldmath${1+1=2}$}
\lipsum[1-10]
\end{document}