有没有办法为文档的不同部分创建两个不同的 aliaspagestyle。也就是说,我是否可以为目录的第一页创建一个 aliaspagestyle,而为文档的其余部分创建一个不同的 aliaspagestyle?
我想要修复的问题:
前言页应显示为 i ii iii,而文档的其余部分应显示为 1/10 2/10 3/10 等。同时,保留第一页、目录和章节的页眉抑制,并可以选择单独编辑其余目录页的页眉与主要页。
\documentclass[12pt,a4paper,onecolumn,oneside,final]{memoir}
\usepackage[english]{babel}
\usepackage{lmodern}
\usepackage[T1]{fontenc}
\usepackage{newcent}
\usepackage[utf8x]{inputenc}
\usepackage[textwidth=14cm,textheight=22cm]{geometry}
\usepackage{lipsum}
\makepagestyle{TOC} % For the mainmatter
\makepsmarks{TOC}{\nouppercaseheads
\createplainmark{toc}{left}{\contentsname}}
\makeoddhead{TOC}{Something}{}{}
\makeoddfoot{TOC}{}{}{\thepage}
\makepagestyle{HDR} % For the mainmatter
\makepsmarks{HDR}{\nouppercaseheads
\createmark{chapter}{left}{nonumber}{}{\space}
\createmark{section}{right}{nonumber}{}{\space}
\makefootrule{HDR}{14cm}{\normalrulethickness}{8pt}
\makeheadrule{HDR}{14cm}{\normalrulethickness}
\createplainmark{toc}{left}{\contentsname}
\createplainmark{lof}{left}{\listfigurename}
\createplainmark{lot}{left}{\listtablename}
\createplainmark{bib}{left}{\bibname}
\createplainmark{index}{both}{\indexname}
\createplainmark{glossary}{both}{\glossaryname}}
\makeoddhead{HDR}{Something else}{}{}
\makeoddfoot{HDR}{}{}{\thepage\ / \thelastpage}
\makepagestyle{ALI} % Alias for the mainmatter
\makeoddfoot{ALI}{}{}{\small \thepage\ / \thelastpage}
\makefootrule{ALI}{14cm}{\normalrulethickness}{8pt}
\aliaspagestyle{chapter}{ALI}
\aliaspagestyle{part}{ALI}
\begin{document}
\frontmatter
\tableofcontents \pagestyle{TOC}
\mainmatter \pagestyle{HDR}
\chapter{A chapter}
\lipsum
\chapter{A chapter}
\lipsum
\chapter{A chapter}
\lipsum
\chapter{A chapter}
\lipsum
\chapter{A chapter}
\lipsum
\chapter{A chapter}
\lipsum
\chapter{A chapter}
\lipsum
\chapter{A chapter}
\lipsum
\chapter{A chapter}
\lipsum
\chapter{A chapter}
\lipsum
\chapter{A chapter}
\lipsum
\chapter{A chapter}
\lipsum
\chapter{A chapter}
\lipsum
\chapter{A chapter}
\lipsum
\chapter{A chapter}
\lipsum
\chapter{A chapter}
\lipsum
\chapter{A chapter}
\lipsum
\chapter{A chapter}
\lipsum
\chapter{A chapter}
\lipsum
\chapter{A chapter}
\lipsum
\chapter{A chapter}
\lipsum
\end{document}
我制作了大量 Lipsum 章节,以便您能在目录中看到我的意思。唯一的问题是第一页的编号。
答案1
我不完全确定我是否理解了您的问题,但我认为您只是想控制文档不同部分的页脚,而主要问题是,例如,章节第一页的页眉和页脚与其他页面的页眉和页脚不同。
您的代码似乎有两个问题。首先,您应该设置页面样式前您希望更改生效的页面——目前,您切换到TOC
样式,例如,在编写之后。同样,您需要在切换样式之前用或\tableofcontents
结束页面。其次,您需要为目录的第一页设置新的页面样式。\clearpage
\newpage
您可以通过定义类似以下内容来解决第二个问题:
\makepagestyle{ALItoc} % Alias for the mainmatter
\makepsmarks{ALItoc}{\nouppercaseheads
\makeoddfoot{ALItoc}{}{}{\small \thepage}
\makefootrule{ALItoc}{14cm}{\normalrulethickness}{8pt}
\makeoddhead{ALItoc}{}{}{}
}
现在你可以使用以下方法解决剩余的问题:
\frontmatter
\pagestyle{TOC}
\aliaspagestyle{chapter}{ALItoc}
\tableofcontents\clearpage
\aliaspagestyle{chapter}{ALI}
\pagestyle{HDR}
\mainmatter
如果我理解了你的问题那么我认为这回答了你的问题。