混合 KOMAscript 与几何

混合 KOMAscript 与几何

我有一个使用 KOMAscript srcrprt 文档类的文档。对于某些页面,我需要使用绝对值设置自定义边距。我尝试使用 geometry 包来实现这一点,如下所示:

\newgeometry{..options..}

..custom page..

\restoregeometry

然而,这并不像预期的那样工作。当我添加\usepackage{geometry}到序言中时,KOMAscript 文档布局就被破坏了。

可以修复这个问题吗?

答案1

geometry包有一个非常有用的选项,即pass

如果你打电话

\usepackage[pass]{geometry}

该包不会设置任何分页参数,而只是加载自身并使命令\newgeometry可用。

包文档中有一个使用示例:

\documentclass{book}
\usepackage[pass]{geometry}
   % ’pass’ disregards the package layout,
   %  so the original ’book’ layout is memorized here.
\begin{document}
\newgeometry{margin=1cm}% changes the first page dimensions.
   Page 1
\restoregeometry % restores the original ’book’ layout.
   Page 2 and more
\end{document}

答案2

对于多个版本,KOMA-Script 提供了一个未记录的选项usegeometry来与包 交互geometry。自 KOMA-Script 3.22 起,这是一个记录的选项(包typearea)。它将包 的页面设置转换typearea为包 的页面设置geometry并将它们传递,例如作为选项传递给geometry

\documentclass[usegeometry]{scrreprt}
\usepackage{geometry}
\usepackage{showframe}
\begin{document}
\newgeometry{margin=1cm}% changes the first page dimensions.
   Page 1
\restoregeometry % restores the original typearea layout.
   Page 2 and more
\end{document}

通过这种合作,甚至可以使用 更改页面大小或页面方向typearea,然后使用 更改边距geometry,这是当前geometry不提供的功能\newgeometry。但在这种情况下,您应该使用typearea的命令来存储和恢复几何图形。

相关内容