这个问题来自于 如何平移和旋转横向页面的标题?
我想旋转一些非连续的横向页面上的页眉(带有页码和章节名称)。
我正在使用建议的代码沙漠之子 用户效果很好,不会与我使用的其他软件包产生冲突。问题是这个解决方案似乎是一次性的,在\restoregeometry
命令之后我可以再次使用它\newgeometry{,hmargin=3cm,vmargin=5cm,landscape}
。
我的意图是用作:
\usepackage[a4paper,top=3cm,bottom=2cm,left=3cm,right=2cm]{geometry} % Margins.
\makeatletter
\def\ifGm@preamble#1{\@firstofone}
\appto\restoregeometry{%
\pdfpagewidth=\paperwidth
\pdfpageheight=\paperheight}
\apptocmd\newgeometry{%
\pdfpagewidth=\paperwidth
\pdfpageheight=\paperheight}{}{}
\makeatother
\newcommand{\newgeometrylandscape}{\newgeometry{top=3cm,bottom=2cm,left=3cm,right=2cm,landscape}}
\begin{document}
\chapter{One}
\lipsum[1]
\section{One One}
\lipsum[2]
\newgeometry{hmargin=3cm,vmargin=5cm,landscape}
Landscape part 1
\lipsum[3-5]
\restoregeometry
\lipsum[6]
\newgeometry{hmargin=3cm,vmargin=5cm,landscape}
Landscape part 2
\lipsum[3-5]
\restoregeometry
\end{document}
答案1
我创建的解决方法是强制\newgeometry
在第二次调用宏时未改变的变量的值。
\apptocmd\newgeometry{%
\paperwidth=297mm
\paperheight=210mm
\textwidth=702.78308pt
\linewidth=\textwidth
\hsize=\textwidth
\columnwidth=\textwidth
\pdfpagewidth=\paperwidth
\pdfpageheight=\paperheight
}{}{}