\newgeometry 不适用于子文件的最后一页,而仅适用于主文档

\newgeometry 不适用于子文件的最后一页,而仅适用于主文档

我正在处理一份双面文档,该文档使用子文件包整理了多个文件,其中一些文件需要更宽的边距来添加边注。但是,\newgeometry 命令始终无法应用于主文档中每个子文件的最后一页,尽管在每个单独的子文件中都可以正确应用。下面是一个非常简单的示例来说明:

主文件(名称.tex):

\documentclass{book}

\usepackage{subfiles}
\usepackage{geometry}
\usepackage{lipsum}
\usepackage{showframe}

\begin{document}
\subfile{name2}
\end{document}

子文件(name2.tex):

\documentclass[/name]{subfiles}
\begin{document}
\newgeometry{
    top=72pt, inner=72pt, bottom=72pt, outer=216pt, marginparwidth =144pt
    }
\lipsum[1-10]
\end{document}

其结果是从子文件编译出来的pdf: 在此处输入图片描述

这个 pdf 是从主文件编译出来的: 在此处输入图片描述

有人知道这该如何解决吗?

答案1

使用 \newpage 结束子文件以强制 LaTeX 在当前设置下完成页面:

\documentclass[name]{subfiles} %changed /name to name, needed on my system
\begin{document}
\newgeometry{
    top=72pt, inner=72pt, bottom=72pt, outer=216pt, marginparwidth =144pt
    }
\lipsum[1-10]
\newpage
\end{document}

相关内容