如果超过 X 英寸未排版,则在章节末尾显示“此处故意留空”

如果超过 X 英寸未排版,则在章节末尾显示“此处故意留空”

我正在使用 LaTeX 排版书籍中的法律合同(信托契约),并且为合同的每个主要部分使用章节,但有时会在所述章节末尾留下很大的空白。

我搜索了 stack exchange 的档案,甚至询问了一位法学硕士,但还是没成功。这里的帖子都是关于在空白页上放置某种居中消息,比如“此页故意留空”,但我也需要这样的内容来表示超过 2 英寸高的空白处。

谁能帮我?

答案1

在最初误解了这个问题之后,我修改了我的答案,以便在文档twoside在新章节之前留下空白页的情况下实现“故意空白”消息(使用宏\gotooddpage)。我还提供了宏\finishonevenpage以在文档末尾实现相同的效果。

通过额外使用\pretocmd和,我可以实现和\AtEndDocument的自动执行,无需用户干预。\gotooddpage\finishonevenpage

将消息添加到部分完整的章末页面,但仅当存在显著(>2 英寸)空白空间时,可以使用类似于以下问题的方法实现:测量页面上的剩余空间并将其用于另一页

\documentclass[twoside]{book}
\usepackage{changepage}% TO MAKE SURE CERTAIN THINGS START ON ODD PAGE #
% MACRO TO GO TO ODD PAGE, INSERTING "INTENTIONALLY LEFT BLANK" IF NEEDED
\newcommand\gotooddpage{\clearpage%
  \checkoddpage\ifoddpage\else\blankpage\fi\clearpage}
% MACRO TO FINISH ON EVEN PAGE, INSERTING "INTENTIONALLY LEFT BLANK" IF NEEDED
\newcommand\finishonevenpage{%
  \clearpage\checkoddpage\ifoddpage\else\blankpage\fi}
\newcommand{\blankpage}{%
  \clearpage
  \begin{center}
    {\textsc{\rule{0em}{4.5in}Intentionally left blank.}}
  \end{center}
}
\def\measurepage{\the\dimexpr\pagegoal-\pagetotal-\baselineskip\relax}
\newcommand\finishthispage{\ifnum\value{chapter}=0\else
  \ifdim\measurepage>2in\relax
    \vfill\centerline{\textsc{Intentionally left blank}}\vfill\clearpage
  \fi%
\fi}
\usepackage{lipsum}
\usepackage{etoolbox}
\pretocmd{\chapter}{\finishthispage\gotooddpage}{}{}
\AtEndDocument{\finishthispage\finishonevenpage}
\begin{document}
\chapter{First Chapter} 
\lipsum[1-3] % some text 
%\gotooddpage only needed manually if no \pretocmd used on \chapter
\chapter{Second Chapter} 
\lipsum[4-10] % some text 
\chapter{Third Chapter} 
\lipsum[11-20] % some more text
%\finishonevenpage only needed manually if no \AddEndDocument used
\end{document}

在此处输入图片描述

在此处输入图片描述

在此处输入图片描述

相关内容