在前言中,有没有办法显示没有任何标题或页码的空白页?
例如,如果我的序言刚好适合奇数页,我不希望接下来的空白偶数页显示任何内容。
我正在使用这个book
课程。
谢谢。
答案1
如果您希望整个文档都具有该行为,只需加载该包即可emptypage
。
平均能量损失
\documentclass{book}
\usepackage{emptypage}
\usepackage{lipsum}
\begin{document}
\frontmatter
\chapter*{Preface}
\lipsum[1]
\mainmatter
\chapter{1}
\lipsum[1]
\chapter{2}
\lipsum[1]
\backmatter
\chapter*{Conclusions}
\lipsum[1]
\chapter*{At the end}
\lipsum[1]
\end{document}
相反,如果您希望在前言中实现该行为,但不在主内容中实现该行为,您可以执行以下操作。
使用包中的代码,emptypage
我们定义了两个命令,\setempty
打印空白页和\setnonempty
打印普通空白页。
\makeatletter
\def\emptypage@emptypage{%
\hbox{}%
\thispagestyle{empty}%
\newpage%
\if@twocolumn%
\hbox{}%
\newpage%
\fi%
}
\let\oldcleardoublepage\cleardoublepage
\newcommand{\setempty}{%
\def\cleardoublepage{%
\clearpage%
\if@twoside%
\ifodd\c@page%
% do nothing
\else%
\emptypage@emptypage%
\fi%
\fi%
}%
}
\newcommand{\setnonempty}{%
\let\cleardoublepage\oldcleardoublepage%
}
\makeatother
以下 MWE 展示了其如何工作。
\documentclass{book}
\makeatletter
\def\emptypage@emptypage{%
\hbox{}%
\thispagestyle{empty}%
\newpage%
\if@twocolumn%
\hbox{}%
\newpage%
\fi%
}
\let\oldcleardoublepage\cleardoublepage
\newcommand{\setempty}{%
\def\cleardoublepage{%
\clearpage%
\if@twoside%
\ifodd\c@page%
% do nothing
\else%
\emptypage@emptypage%
\fi%
\fi%
}%
}
\newcommand{\setnonempty}{%
\let\cleardoublepage\oldcleardoublepage%
}
\makeatother
\usepackage{lipsum}
\begin{document}
\frontmatter
\setempty
\chapter*{Preface}
\lipsum[1]
\mainmatter
\setnonempty
\chapter{1}
\lipsum[1]
\chapter{2}
\lipsum[1]
\backmatter
\setempty
\chapter*{Conclusions}
\lipsum[1]
\chapter*{At the end}
\lipsum[1]
\end{document}
答案2
您可以加载该包scrextend
。然后它就是默认行为。
\documentclass{book}
\usepackage{scrextend}
\usepackage{blindtext}
\begin{document}
\frontmatter
\chapter{preface}
\blindtext
\mainmatter
\blinddocument
\end{document}
也可以使用包选项cleardoublepage=<pagestyle>
或宏为此类页面选择其他样式
\KOMAoptions{cleardoublepage=<pagestyle>}
因此,如果您愿意,可以使用plain
:\mainmatter
\documentclass{book}
\usepackage{scrextend}
\usepackage{blindtext}
\begin{document}
\frontmatter
\chapter{preface}
\blindtext
\mainmatter
\KOMAoptions{cleardoublepage=plain}
\chapter{Start}
\blindtext
\blinddocument
\end{document}
答案3
我遇到了同样的问题,我发现这是最简单的解决方案:
\usepackage[clearempty]{titlesec}