我已设置标题,在页面左侧显示章节编号和名称,在右侧显示页码。
这对于大多数章节名称来说都很好,但有一个章节名称有点长,但还不够长(似乎):它只是与页码重叠,但还不足以使 LaTeX 自动换行。(我有一个较长的标题,LaTeX 注意到了这一点并做了正确的事情。)
我将部分名称更改为
\section[really long section\\name]{really long section name}
它在标题中工作正常,但(显然)也会在目录中产生换行符。部分名称适合目录,因此:
是否可以在标题中强制换行,但不在目录条目中强制换行?
我的序言如下:
\usepackage{fancyhdr}
\pagestyle{fancy}
% with this we ensure that the Chapter and Section
% headings are in lowercase
\renewcommand{\chaptermark}[1]{\markboth{#1}{}}
\renewcommand{\sectionmark}[1]{\markright{\thesection\ #1}{}}
\fancyhf{} % delete the current header and footer
\fancyhead[LO]{\textbf{\rightmark}}
\fancyhead[RO]{\textbf{\thepage}}
\renewcommand{\headrulewidth}{0pt}
\fancypagestyle{plain}{
\fancyhead{} % get rid of the headers on plain pages
\renewcommand{\headrulewidth}{0pt} % and the line
\fancyfoot[R]{\textbf{\thepage}}
}
答案1
不要使用\\
创建一个新的宏,而是\DeclareRobustCommand\NL{ }
使用 在标题中本地重新定义它\DeclareRobustCommand\NL{\\}
。然后写入:
\section[really long section\NL name]{really long section name}
答案2
将您喜欢的头像放入 parbox 中的 LO 中,如下所示:
\fancyhf{} % delete the current header and footer
\fancyhead[LO]{\parbox{0.7\textwidth}{\textbf{\rightmark}}}% <----\parbox here.
\fancyhead[RO]{\textbf{\thepage}}
并且不要\\
在简称中使用:\section[really long section\\name]{really long section name}
编辑:您可以使用
\fancyhf{} % delete the current header and footer
\fancyhead[LO]{\parbox[t]{0.9\textwidth}{\textbf{\rightmark}}} %<--- use [t] for parbox.
\fancyhead[RO]{\parbox[t]{0.02\textwidth}{\textbf{\thepage}}} %<--- better use [t] here also for parbox to ensure that alignment.
您还可以使用以下方法调整头部分离度
\setlength{\headsep}{0.25in} % <---change the value accordingly