我正在用 LaTeX 编写一本谜题书,使用book
类。该\thispagestyle{empty}
命令已成功删除所有页面上的页码\chapter
,但到目前为止,命令之前和/或之后的\newpage
和组合都无法删除页面底部中心的页码。\thispagestyle{empty}
\part
\part
\newpage
\tableofcontents
\thispagestyle{empty}
\newpage
\thispagestyle{empty}
\newpage
\thispagestyle{empty}
\part{}
\thispagestyle{empty}
\chapter{}
\thispagestyle{empty}
上面的代码生成了一个目录页,然后是一个空白页,然后是一个\part
页面,然后是一个空白页,然后是一个\chapter
页面。除了页面上没有页码\part
,而且它似乎非常不愿意消失,从命令周围的空白页命令数量可以看出\part
!
任何帮助都将受到赞赏。
谢谢。
答案1
部分或章节的第一页明确使用页面样式plain
。如果您想更改此行为,可以通过在序言中添加以下几行来plain
实现相同的效果:empty
\makeatletter
\let\ps@plain\ps@empty
\makeatother
在此之后,页面样式plain
不再可用。更灵活的解决方案是定义
\makeatletter
\let\origps@plain\ps@plain
\newcommand\MakePlainPagestyleEmpty{\let\ps@plain\ps@empty}
\newcommand\MakePlainPagestylePlain{\let\ps@plain\origps@plain}
\makeatother
现在您可以将其等同plain
于empty
使用\MakePlainPagestyleEmpty
并通过 将其再次恢复\MakePlainPagestylePlain
。
请注意,您还可以使用以下方式切换默认页面样式
\pagestyle{empty}
然后切换回
\pagestyle{headings}
尝试以下代码:
\documentclass{book}
\makeatletter
\let\origps@plain\ps@plain
\newcommand\MakePlainPagestyleEmpty{\let\ps@plain\ps@empty}
\newcommand\MakePlainPagestylePlain{\let\ps@plain\origps@plain}
\makeatother
\usepackage{blindtext}
\begin{document}
\pagestyle{empty}
\MakePlainPagestyleEmpty
\tableofcontents
\part{part}
\chapter{chapter}
\Blindtext
% Revert to standard behaviour of the book class
\chapter{chapter}
\MakePlainPagestylePlain
\pagestyle{headings}
\Blindtext
\end{document}
答案2
由于您使用的是book
文档类,因此您需要做的就是在序言中发出以下两个指令:
\usepackage{etoolbox}
\patchcmd{\part}{\thispagestyle{plain}}{\thispagestyle{empty}}{}{}
完整的 MWE:
\documentclass{book}
\usepackage{etoolbox}
\patchcmd{\part}{\thispagestyle{plain}}{\thispagestyle{empty}}{}{}
\begin{document}
\tableofcontents
\part{Uno}
\chapter{A}
\part{Due}
\chapter{B}
\chapter{C}
\end{document}
答案3
答案4
使用软件包用户手册建议的代码教派:\partfont{\thispagestyle{empty}}