将标题设为斜体格式

将标题设为斜体格式

我正在尝试更改页眉和页脚。我正在使用这个:

\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}

在此处输入图片描述

相关内容