Ich habe nach der Anleitung eine Briefvorlage mit Infospalte erzeugt, die genau meinen Erwartungen entpricht. Auch habe ich es geschafft, dass auf der zweiten Seite der Satz nicht nach links verschoben wird. Allerdings geschieht dies wiederum auf Seite 3 und auf allen folgenden ungeraden Seiten. Wie kann ich das verhindern?
Mein Auto fährt nicht, Hilfe, warum nicht?
Schau, vielleicht kann Markus Kohm erraten, warum was wie passiert. Aber alle anderen nicht.
Okay, sorry, etwas ausführlicher...
Ich habe auf Basis von asymTypB.lco (aus dem Anhang des KOMA-Script Buches) eine Briefvorlage für unseren Lehrstuhl gebaut. Habe dann mit der Option twoside geschafft, dass auf der zweiten Seite des Briefes der Satz nicht nach links verschoben wird. Das ganze klappt aber nur für gerade Seitenzahlen, da vorher durch
\setlength{\oddsidemargin}{\useplength{toaddrhpos}}%
\addtolength{\oddsidemargin}{-1in}%
\l@addto@macro{\@typearea@end}{%
\setlength{\oddsidemargin}{\useplength{toaddrhpos}}%
\addtolength{\oddsidemargin}{-1in}%
}
\ifx\AtBeginDocument\@notprerr
\KOMAoptions{DIV=last}%
\else
\AtBeginDocument{%
\g@addto@macro{\@typearea@end}{%
\setlength{\oddsidemargin}{\useplength{toaddrhpos}}%
\addtolength{\oddsidemargin}{-1in}%
}%
}%
\fi
der Satzspiegel bei ungeraden Seiten nach links verschoben wird. Daher wird nämlich auch auch Seite 3 und alle anderen ungeraden folgenden Seiten nach links verschoben. Geht das, dass der Spiegel nur auf der ersten Seite nach links verschoben wird?
Das Beispiel zu asymTypB.lco
Das Beispiel zu asymTypB.lco hat 104 Zeilen. Du hast irgendetwas daran geändert und die Option twoside eingestellt.
1. Die Originaldatei liefert (nach meiner Erinnerung) fehlerlos Briefe, bei denen auch die zweite Seite einen nach links verschobenen Seitenspiegel hat. Oder nicht? Also hast Du irgendwo etwas eingefügt, aber woher soll man das wissen?
2. twoside ist nicht dafür gedacht, den Seitenspiegel zu zementieren.
Zu dieser Option sagt scrguide.pdf:
"Doppelseitige Briefe ergeben in den Augen des Autors wenig Sinn. Deshalb schaltet die Option twoside auch nur teilweise auf ein doppelseitiges Layout. So wird zwar die Möglichkeit geschaffen, auf linken und rechten Seiten mit einem unterschiedlichen Rand zu arbeiten, diese Möglichkeit wird jedoch nicht genutzt. Die Option hat also mehr die Bedeutung: Aktiviere die Möglichkeiten eines zweiseitigen Dokuments aber behalte bis auf weiteres und so weit wie möglich das einseitige Layout bei."
Ich kenne die Versuchung gut, dem Forum irgendein Bruchstück hinzuwerfen und zu hoffen, dass man ein paar Codezeilen zurückbekommt, die alle Probleme lösen.
Willst Du abwarten und hoffen oder ein Minimalbeispiel machen mit Kommentaren Deiner Abweichungen zur Originaldatei?
Okay, tut mir wirklich
Okay, tut mir wirklich leid
zu 1: Ja, es erzeugt genau die Briefe, die ich brauche. Und eben genau wie du sagst auf jeder Seite mit nach links verschobenem Seitenspiegel (und Logo wenn vorhanden).
Ich habe daran kaum Änderungen gemacht. Die Datei sieht bei mir so aus:
\ProvidesFile{koriath.lco}%
[2005/11/22 v0.1 unsupported LCO-file]%
\LoadLetterOption{DINmtext}%
\setlength{\oddsidemargin}{\useplength{toaddrhpos}}%
\addtolength{\oddsidemargin}{-1in}%
% Dafuer sorgen, dass die Verschiebung auch nach Satzspiegelneuberechnungen
% erhalten bleibt (siehe C.7. Modifikationen, letzter Absatz)
\l@addto@macro{\@typearea@end}{%
\setlength{\oddsidemargin}{\useplength{toaddrhpos}}%
\addtolength{\oddsidemargin}{-1in}%
}
\ifx\AtBeginDocument\@notprerr
\KOMAoptions{DIV=last}%
\else
\AtBeginDocument{%
\g@addto@macro{\@typearea@end}{%
\setlength{\oddsidemargin}{\useplength{toaddrhpos}}%
\addtolength{\oddsidemargin}{-1in}%
}%
}%
\fi
% weiter wie beschrieben
\@setplength{firstheadvpos}{0pt}%
\@setplength{firstheadwidth}{\paperwidth}%
\@setplength{firstfootvpos}{\paperheight}%
\@addtoplength[-]{firstfootvpos}{\useplength{toaddrvpos}}%
% Schlussformel nicht eingerückt
\let\raggedsignature=\raggedright
%\@addtoplength{refvpos}{-1.5\baselineskip}%
\newkomavar{company}%
\@newplength{infocolwidth}%
% C.7. Modifikationen
\ifdim \textwidth
beispiel.tex ist fehlerhaft
Wenn Du Umlaute direkt eingibst, solltest Du unbedingt vor dem ersten Umlaut deklarieren, welche Eingabecodierung die Datei hat. Indicees setzt man im Textmodus mit
\textsubscript
.Ist mir auch schon
Ist mir auch schon aufgefallen. Noch mal vielen Dank!
Eigentlich kann man den Satzspiegel nicht im Dokument ändern
Das Problem ist im Anhang des KOMA-Script Buches erklärt. Allerdings, wenn man den Satzspiegel gar nicht ändert, sondern nur verschiebt, dann gibt es einen Hack, der das ermöglicht. Zunächst einmal lässt man den Teil:
komplett weg. Man darf dann nur nach dem Laden der lco-Datei den Satzspiegel nicht neu berechnen. Das darf man aber ohnehin nicht, weil man an Stelle des entfernten Codes nun folgendes einfügt:
Damit wird nach der ersten Seite der linke Rand global auf den ursprünglichen Wert gesetzt, der ja in
\evensidemargin
noch vorhanden ist (zumindest, wenn man keine Bindekorrektur einsetzt).Damit dies funktioniert, muss man dann außerdem den Brief wieder einseitig, also ohne Option
twoside
setzen.Es sei nicht verschwiegen, dass es sich bei dieser Lösung um einen Hack handelt. Es ist nirgendwo dokumentiert, dass die Änderung von
\oddsidemargin
innerhalb des Dokuments funktioniert. Ebenso ist nicht dokumentiert, dass man bei\setlength
der Länge ein\global
voranstellen kann, um eine globale Änderung herbeizuführen.Wow, vielen Dank! Es klappt.
Wow, vielen Dank! Es klappt.
Benzin?
Wenn Dein Auto nach 600 km plötzlich nicht mehr fährt, könnte das daran liegen, dass der Tank leer ist. Daran kann man leider nicht viel ändern. Das System hat einfach keinen größeren Tank vorgesehen.
Spaß beiseite: Mir war zwar tatsächlich sofort klar, wo das Problem lag. Das vollständige Minimalbeispiel war aber in der Tat trotzdem sehr nützlich, weil ich meine Lösung da einfach testweise einbauen konnte. Ohne eigenen Test hätte ich glatt das
\global
im Lösungsansatz vergessen.