выделить заголовки курсивом

выделить заголовки курсивом

Я пытаюсь изменить верхние и нижние колонтитулы. Я использую это:

\documentclass[12pt,b5paper]{book}
\usepackage{fancyhdr}
\pagestyle{fancy}
    \fancyhf{}
    \fancyhead[LE]{\fontsize{12}{12}\selectfont\nouppercase\thepage}
    \fancyhead[RE]{\fontsize{9}{12}\selectfont\nouppercase\leftmark} 
    \fancyhead[RO]{\fontsize{12}{12}\selectfont\nouppercase\thepage} 
    \fancyhead[LO]{\fontsize{9}{12}\selectfont\nouppercase\rightmark} 
    \fancyfoot[CE,CO]{} 
    \fancyfoot[LE,RO]{} 
    \renewcommand{\chaptermark}[1]{\markboth{\chaptername \ \thechapter \ -\ #1}{}}
    \renewcommand{\sectionmark}[1]{\markright{\thesection \ -\ #1}{}}

откуда я это взял:

введите описание изображения здесь

Но я хочу, чтобы заголовок (Глава 4 — Карбены тетракоординированного железа) был выделен курсивом.

как я могу это сделать?

заранее спасибо.

решение1

Почему вы не используете \smallили \footnotesizeдля размера шрифта (в зависимости от параметра размера шрифта в вашем классе документа)?

Вот возможный код:

\documentclass[12pt,b5paper]{book}
\usepackage[utf8]{inputenc}
\usepackage{fancyhdr}
\pagestyle{fancy}
    \fancyhf{}
    \fancyhead[LE]{\thepage}
    \fancyhead[RE]{\fontsize{9}{12}\selectfont\itshape\nouppercase{\leftmark}}
    \fancyhead[RO]{\thepage}
    \fancyhead[LO]{\fontsize{9}{12}\selectfont\itshape\nouppercase{\rightmark}}
    \fancyfoot[CE,CO]{}
    \fancyfoot[LE,RO]{}
    \renewcommand{\chaptermark}[1]{\markboth{\chaptername \ \thechapter \ –\ #1}{}}
    \renewcommand{\sectionmark}[1]{\markright{\thesection \ –\ #1}{}}

\begin{document}
  \setcounter{chapter}{3}

\chapter{Tetracoordinate Iron Carbenes}
\newpage
\setcounter{section}{1}
\section {The reference system}
\end{document} 

введите описание изображения здесь

решение2

Предпочтительнее использовать команды более высокого уровня, такие как , \footnotesizeа не \fontsize.

Обратите внимание, что \nouppercaseэто команда, принимающая аргумент, поэтому правильный синтаксис будет таким \nouppercase{\itshape\leftmark}: , но \itshapeобъявление лучше сделать снаружи \leftmark.

\documentclass[a4paper,12pt]{book}

\usepackage{fancyhdr}

\usepackage{lipsum} % just for testing

\pagestyle{fancy}
\fancyhf{}
\fancyhead[LE,RO]{\thepage}
\fancyhead[RE]{\footnotesize\itshape\nouppercase{\leftmark}}
\fancyhead[LO]{\footnotesize\itshape\nouppercase{\rightmark}}
\setlength{\headheight}{14.5pt} % as requested by fancyhdf

\renewcommand{\chaptermark}[1]{\markboth{\chaptername \ \thechapter \ -\ #1}{}}
\renewcommand{\sectionmark}[1]{\markright{\thesection \ -\ #1}{}}

\begin{document}

\tableofcontents

\chapter{Tetracoordinate Iron Carbenes}

\section{Some title}

\lipsum[1-20]

\end{document}

Если вы используете размер меньше 12pt в качестве параметра класса документа, закомментируйте строку \setlengthи проверьте в файле журнала правильную длину для назначения \headheight.

На самом деле, поскольку вы переопределяете \chaptermarkи \sectionmark, \nouppercaseто он не понадобится; однако, \tableofcontentsпроблемы \MakeUppercase(и, аналогично, \listoffiguresи \listoftables), поэтому лучше все равно добавить его.

введите описание изображения здесь

решение3

Вот решение без fancyhdr. Можно переопределить:

\ps@headings

Просто замените \MakeUppercase на \itshape. (Я сделал это с помощью xparse, это не обязательно, вы можете просто скопировать определение из book.cls и заменить \MakeUppercase, как описано.

То же самое и с \tableofcontents.

МВЭ:

\documentclass{book}

\usepackage{xparse}
\usepackage{blindtext}

\makeatletter

\DeclareDocumentCommand\ps@headings{}%
 {\let\@oddfoot\@empty\let\@evenfoot\@empty%
  \DeclareDocumentCommand\@evenhead{}{\thepage\hfil\leftmark}%
  \DeclareDocumentCommand\@oddhead{}{{\rightmark}\hfil\thepage}%
  \let\@mkboth\markboth%
  \DeclareDocumentCommand\chaptermark{m}%
     {\markboth{\itshape% !!!!
            {\ifnum \c@secnumdepth >\m@ne%
             \@chapapp\ \thechapter. \ %
           \fi%
           ##1}}{}}%
  \DeclareDocumentCommand\sectionmark{m}%
     {\markright{\itshape% !!!!
               {\ifnum \c@secnumdepth >\z@%
              \thesection. \ %
            \fi%
            ##1}}}}

\pagestyle{headings}% Important to load the changes

\renewcommand\tableofcontents{%
    \if@twocolumn
      \@restonecoltrue\onecolumn
    \else
      \@restonecolfalse
    \fi
    \chapter*{\contentsname
        \@mkboth{%
           \itshape\contentsname}{\itshape\contentsname}}% !!!!
    \@starttoc{toc}%
    \if@restonecol\twocolumn\fi
    }

\makeatother

\begin{document}

\tableofcontents

\Blinddocument

\end{document}

введите описание изображения здесь

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