我需要页面布局方面的帮助memoir
。我想要一个未编号的章节 0(即简介),但使用\chapter
带星号的版本时章节标题是错误的。这是我的示例源:
\documentclass[14pt,extrafontsizes,a4paper,twoside,final]{memoir}
\usepackage[utf8]{inputenc}
\usepackage[italian]{babel}
\usepackage[T1]{fontenc}
\usepackage{indentfirst}
\usepackage{microtype}
\usepackage{lipsum}
\raggedbottomsection
\begin{document}
%
\OnehalfSpacing
%
\frontmatter
\thispagestyle{empty}
\begin{DoubleSpace}
\tableofcontents*
\end{DoubleSpace}
\clearforchapter
\mainmatter
\pagestyle{ruled}
\chapter*{chapter0}
\label{chap:chapter0}
\lipsum
\lipsum
\lipsum
\chapter{chapter1}
\label{chap:chapter1}
\section{ch1-s1}
\lipsum
\section{ch1-s2}
\lipsum
\section{ch1-s3}
\lipsum
\lipsum
\chapter*{last}
\label{chap:last}
\lipsum
\lipsum
\end{document}
问题出在第 0 章和“最后一章”中。你能帮助我吗?
答案1
使用提供的可选参数(同样\chapter
适用于):\chapter*
\chapter*[chapter0]{chapter0}
这将相应地设置\chaptermark
,并更正标题。为什么会这样?让我们\@m@mschapter
看看memoir.cls
:
\newcommand{\@m@mschapter}[2][\@empty]{%
\@schapter{#2}%
\ifx \@empty#1
\def\f@rhdr{#2}%
\else% opt arg
\def\f@rhdr{#1}%
\setcounter{secnumdepth}{-10}%
\chaptermark{#1}%
\setcounter{secnumdepth}{\value{maxsecnumdepth}}%
\fi
\ifanappendix
\memappchapstarinfo{\f@rhdr}{#2}%
\else
\memchapstarinfo{\f@rhdr}{#2}%
\fi
\ifheadnameref\M@gettitle{\f@rhdr}\else\M@gettitle{#2}\fi}
如果没有手动指定,则将可选参数设置为\@empty
。随后,宏将判断#1
(可选参数)是否为\@empty
条件,并进行\chaptermark
相应指定。
请注意,在未编号的分段单元中使用\label
没有帮助。