scrlttr2: Adressfenster zu weit links

Klassen und Pakete zur einfachen Umsetzung individueller Vorstellungen


DerArbeitenschreiberling
Forum-Anfänger
Forum-Anfänger
Beiträge: 33
Registriert: Fr 31. Mär 2017, 18:28

scrlttr2: Adressfenster zu weit links

Beitrag von DerArbeitenschreiberling »

Hallo!

Ich schreibe meine Briefe mit der KOMA-Klasse scrlttr2. Störend ist allerdings, dass ich meine Briefe sehr genau und ordentlich falten muss, damit das Adressfenster auch wirklich in das Sichtfenster meiner Briefe passt! Sind die Briefe leicht falsch gefaltet, dann sind die ersten Buchstaben des Addressfensters "abgeschnitten". Das möchte ich natürlich vermeiden, auch wenn ich mal nicht Zeit und Lust habe, meine Briefe derart präzise zu falten.

Mein Ziel also: Ich möchte den gesamten Textsatz des Briefes etwa einen Zentimeter weiter nach rechts rücken. Folgende Ansätze habe ich bereits probiert:

- Nutzung des Packages geometry: Es ändert sich lediglich das Layout des Brieftextes, aber nicht der des Kopfes.
- Ändern von \marginparwidth oder \evensidemargin oder \oddsidemargin mittels \renewcommand: Lediglich \oddsidemargin gibt mir ein Resultat, bei dem lediglich Briefkopf und Faltmarker nach links verschoben werden. Ich kann allerdings negative Angaben verwenden, um das ganze nach rechts zu verschieben.

Leider lassen sich diese beiden Erkenntnisse nicht kombinieren. Wenn ich den Kopf mit \oddsidemargin und den Text mit dem Package geometry verschieben will, macht mir die negative Längenangabe Probleme: "You can't use `the character -' after \the. \begin{document}". Hierzu mein Beispiel:

Code: Alles auswählen

\documentclass[left=8cm]{scrlttr2}
%\usepackage[left=5cm]{geometry}

\renewcommand{\oddsidemargin}{-1cm}
%\usepackage[margin=1cm]{geometry}
\usepackage[utf8]{inputenc}
\usepackage[ngerman]{babel}

\setkomavar{fromaddress}{Musterweg 12\\%
						12345 Berlin}
\setkomavar{fromname}{Max Mustermann}
\KOMAoptions{foldmarks=p}




\begin{document}
	\setkomavar{date}{\today}
	\begin{letter}{Willhelm Müller\\%
			Testallee 8\\%
			98543 Kaiserslautern}
		\opening{Sehr geehrter Herr Müller,}
		
			hallo, hallo!
		
		\closing{Mit freundlichen Grüßen,}
	\end{letter}
\end{document}

Damit steht die Frage im Raum: Wie lässt sich mein Problem am besten Lösen? Gibt es irgendeine Möglichkeit KOMA-Scripts, den linken Abstand zu vergrößern?

Gast

Beitrag von Gast »

Lies mal die Erklärung zu den Pseudolängen in der KOMA-Script-Anleitung, [d]scrguide[/d]. Im KOMA-Script-Buch wird sogar sehr explizit erklärt, wie man beispielsweise die Anschrift verschiebt.

DerArbeitenschreiberling
Forum-Anfänger
Forum-Anfänger
Beiträge: 33
Registriert: Fr 31. Mär 2017, 18:28

Beitrag von DerArbeitenschreiberling »

Anonymous hat geschrieben:Lies mal die Erklärung zu den Pseudolängen in der KOMA-Script-Anleitung, [d]scrguide[/d]. Im KOMA-Script-Buch wird sogar sehr explizit erklärt, wie man beispielsweise die Anschrift verschiebt.
Wie es scheint ist die Länge "firstheadhpos" die Länge die ich brauche. Aber wie man auf Seite 460 der Dokumentation sieht muss ich wohl auch die Werte refhpos und firstfoothpos ändern, sofern sie nicht voneinander abhängen.

Jedenfalls habe ich es erstmal mit dieser einen Länge versucht. Laut Seite 459 brauche ich dafür \@addtoplength, welches ich nur innerhalb von LetterClassOption-Files verwenden kann. Hier also die Texte:

document.tex

Code: Alles auswählen

\documentclass{scrlttr2}

\LoadLetterOption{test}


\begin{document}
   \setkomavar{date}{\today}
   \begin{letter}{Willhelm Müller\\%
         Testallee 8\\%
         98543 Kaiserslautern}
      \opening{Sehr geehrter Herr Müller,}
     
         hallo, hallo!
     
      \closing{Mit freundlichen Grüßen,}
   \end{letter}
\end{document}
test.lco

Code: Alles auswählen

\ProvidesFile{test.lco}

\usepackage[utf8]{inputenc}
\usepackage[ngerman]{babel}

\setkomavar{fromaddress}{Musterweg 12\\%
12345 Berlin}
\setkomavar{fromname}{Max Mustermann}
\KOMAoptions{foldmarks=p}

%---------------------------------------------
\makeatletter
\@addtoplength{firstheadhpos}{1cm}
\makeatother
Nach Ausführen des Codes wird mir folgendes gesagt:
"Dimension too large. \opening{Sehr geehrter Herr Müller,}"

Was hat das zu bedeuten?

Gast

Beitrag von Gast »

Du suchst wohl eher toaddrhpos:

Code: Alles auswählen

\documentclass{scrlttr2}

\usepackage[utf8]{inputenc}
\usepackage[ngerman]{babel}

\setkomavar{fromaddress}{Musterweg 12\\%
12345 Berlin}
\setkomavar{fromname}{Max Mustermann}
\KOMAoptions{foldmarks=p}

%---------------------------------------------
\makeatletter
\@addtoplength{toaddrhpos}{1cm}
\makeatother

\begin{document}
%   \setkomavar{date}{\today}% Ist ohnehin Voreinstellung
   \begin{letter}{Willhelm Müller\\%
         Testallee 8\\%
         98543 Kaiserslautern}
      \opening{Sehr geehrter Herr Müller,}
     
         hallo, hallo!
     
      \closing{Mit freundlichen Grüßen,}
   \end{letter}
\end{document}
BTW: Die Voreinstellung für firstheadhpos ist \maxdimen und damit garantiert größer als die Papierbreite, so dass der Kopf zentriert wird. Natürlich kann man zu \maxdimen nichts mehr dazu addieren.

In einer lco-Datei sollte man übrigens \makeatother so wenig verwenden wie in einer sty- oder cls-Datei. Und die Verwendung von \usepackage in einer lco-Datei ist mit Vorsicht zu genießen! Das auslagern von inputenc ist ohnehin nicht empfehlenswert, weil die Codierung eindeutig eine Eigenschaft der jeweiligen Dokumentdatei ist.

Antworten