我正在使用appendix
带有\appendixpage
命令的软件包插入“附录”标题页。但是,我想知道如何避免插入的页面上出现页码。
梅威瑟:
\documentclass{book} \usepackage[titletoc]{appendix} \begin{document}
\tableofcontents
\appendix \appendixpage \noappendicestocpagenum \addappheadtotoc
\chapter{Some title} Some text
\end{document}
请注意,这\noappendicestocpagenum
是关于目录中的页码,而不是文本中的页码,所以这与我的问题无关。
答案1
该附录页面的页面样式为清楚的。您可以暂时将其重新定义为空:
\appendix
\begingroup
\makeatletter
\let\ps@plain\ps@empty
\appendixpage
\makeatother
\endgroup
\noappendicestocpagenum
\addappheadtotoc
最重要的就是
\let\ps@plain\ps@empty
\makeatletter
并\makeatother
已用于能够@
在宏名称中使用,\begingroup
并\endgroup
限制此重新定义的范围。因此,之后,清楚的是正常的清楚的再次。
参照 lockstep 的评论,你可以在序言中这样做。定义
\makeatletter
\newcommand*{\myappendixpage}{%
\begingroup
\let\ps@plain\ps@empty
\appendixpage
\endgroup}
\makeatother
并在文档后面使用它:
\appendix
\myappendixpage
\noappendicestocpagenum
\addappheadtotoc
或者\appendixpage
在序言中重新定义:
\let\plainappendixpage\appendixpage
\makeatletter
\renewcommand{\appendixpage}{%
\begingroup
\let\ps@plain\ps@empty
\plainappendixpage
\endgroup}
\makeatother
注意,如果您\let
在带有可选参数的宏或由 创建的宏的情况下使用\DeclareRobustCommand
,请改用\LetLtxMacro
包letltxmacro
。这里,\let
就足够了。
答案2
使用电子工具箱软件包来修补该\@chap@pppage
宏。
\documentclass{book}
\usepackage[titletoc]{appendix}
\usepackage{etoolbox}
\makeatletter
\patchcmd{\@chap@pppage}{\thispagestyle{plain}}{\thispagestyle{empty}}{}{}
\makeatother
\begin{document}
\tableofcontents
\appendix
\appendixpage
\noappendicestocpagenum
\addappheadtotoc
\chapter{Some title}
Some text.
\end{document}