
Ich habe ein Dokument, das die KOMAscript-Dokumentenklasse srcrprt verwendet. Für einige Seiten muss ich benutzerdefinierte Ränder mit absoluten Werten einrichten. Ich habe versucht, dafür das Geometriepaket wie folgt zu verwenden:
\newgeometry{..options..}
..custom page..
\restoregeometry
Das funktioniert allerdings nicht wie erwartet. Sobald ich etwas \usepackage{geometry}
zur Präambel hinzufüge, wird das KOMAscript-Dokumentlayout zerstört.
Kann man das beheben?
Antwort1
Das geometry
Paket hat eine sehr nützliche Option, nämlich pass
.
Wenn Sie anrufen
\usepackage[pass]{geometry}
Das Paket legt keine Paginierungsparameter fest, sondern lädt sich einfach selbst und stellt den \newgeometry
Befehl zur Verfügung.
Ein Anwendungsbeispiel finden Sie in der Paketdokumentation:
\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}
Antwort2
Für einige Releases bietet KOMA-Script eine undokumentierte Option usegeometry
zur Interaktion mit dem Paket an geometry
. Seit KOMA-Script 3.22 ist dies eine dokumentierte Option (von Paket typearea
). Sie übersetzt die Seiteneinstellungen des Pakets typearea
in Seiteneinstellungen des Pakets geometry
und übergibt sie beispielsweise als Optionen an 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}
Die Zusammenarbeit ermöglicht es sogar, die Seitengröße oder Seitenausrichtung mithilfe von zu ändern typearea
und dann die Ränder mithilfe von zu ändern geometry
, was derzeit geometry
mithilfe von nicht möglich ist \newgeometry
. In diesem Fall sollten Sie jedoch typearea
die Befehle von verwenden, um die Geometrien zu speichern und wiederherzustellen.