Sie sind hier

Briefbogen mit Infospalte und Seite 3

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?

Schau, vielleicht kann Markus Kohm erraten, warum was wie passiert. Aber alle anderen nicht.

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 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 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

Bild von Markus Kohm

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 aufgefallen. Noch mal vielen Dank!

Bild von Markus Kohm

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:

% 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

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:

\RequirePackage{afterpage}
\AtBeginLetter{%
  \afterpage{\setlength{\global\oddsidemargin}{\evensidemargin}}%
}%

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.

Bild von Markus Kohm

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.

Comments for "Briefbogen mit Infospalte und Seite 3" abonnieren