我目前正在用法语写一本由三部分组成的书(使用 \part{})。使用 fancyhdr 包,我希望将书的标题放在偶数页上,将部分的名称(而不是其中部分的名称)放在奇数页上。我该如何实现这一点,尤其是因为书名(“Éléments de Géométrie”)包含 fancyhdr 无法很好地呈现的重音符号。
这是这两个问题的图片,标题未正确呈现(左),并且我只想打印部分的名称而不是部分的名称(右)。
\usepackage{fancyhdr}
\pagestyle{fancy}
\fancyhf{}
\fancyhead[ER]{\nouppercase\leftmark{Éléments de Géométrie}}
\fancyhead[OL]{\nouppercase\rightmark}
\fancyhead[EL,OR]{\thepage}
对于字符编码我使用
\usepackage[francais]{babel}
\usepackage[T1]{fontenc}
\usepackage{textcomp}
\usepackage[utf8]{inputenc}
答案1
我已成功解决了这两个问题。我通过确保在序言的最开始声明这一点来解决了编码问题:
\usepackage{babel}
\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage{textcomp}
然后,为了正确命名各个部分,我根据这个答案使用了这段代码这里:
%%%%%%%%%%%%%%%%%%
% Set up headers %
%%%%%%%%%%%%%%%%%%
\newcommand*\parttitle{}
\let\origpart\part
\renewcommand*{\part}[2][]{%
\ifx\\#1\\% optional argument not present?
\origpart{#2}%
\renewcommand*\parttitle{#2}%
\else
\origpart[#1]{#2}%
\renewcommand*\parttitle{#1}%
\fi
}
\usepackage{fancyhdr}
\pagestyle{fancy}
\fancyhf{}
\fancyhead[ER]{\nouppercase{Éléments de Géométrie}}
\fancyhead[OL]{\nouppercase\parttitle}
\fancyhead[EL,OR]{\thepage}
结果如下: