Benannte Rahmen in Stammseiten

Von Jürgen Schell. | 17 Oktober, 2008 - 10:23
Teil 1:

Dieser Text ist eine Ergänzung zu dem InfoMail 136. Der dort beschriebene Trick lässt sich mit Bildern viel deutlicher darstellen, deshalb diese Ergänzung.
Es geht um folgendes: Auf Stammseiten legt man bisweilen leere Rahmen an, die später im Layout für Bilder benutzt werden sollen, z.B. eine Illustration am Seitenrand, die den Text der Seite illustriert. Bei doppelseitigen Dokumenten läuft man in ein kleines Problem: Wie schafft man es, dass RagTime automatisch erkennt, wohin das Bild gehört, falls aus einer rechten Seite ein linke wird.

Zum Experimentieren hab ich das Dokument und das Formular, von dem es abstammt, angehängt.

Bild 1:
Benannte Rahmen in Stammseiten
Zu Bild 1:
Die Ausgangssituation
Teil 2:

Das abgebildete Layout hat zwei Seiten. Es beruht auf einem Stammlayout. Je oben an den Rändern befindet sich leere Rechtecke, in denen Bilder platziert werden können. Hier sind sie eingekringelt, damit man sie schneller sieht.

Jetzt nehmen wir an, es wird in einem Rechteck auf einer rechten Seite ein Bild platziert. Später muss weiter vorn im Layout eine Seite angefügt werden. Dadurch wird die Seite mit dem Bild zwangsläufig eine linke Seite. Wie kann man RagTime dazu bringen, dass das Bild anschließend korrekt im richtigen Rechteck auf dem linken Rand erscheint?

Bild 2:
Benannte Rahmen in Stammseiten
Zu Bild 2:
Rechtecke benennen im Stammlayout
Teil 3:

Der Trick liegt in einer einheitlichen Benennung der entsprechenden Rechtecke im Stammlayout. Bevor das Layout erzeugt wird, sollte das Stammlayout entsprechend vorbereitet werden.

Die Abbildung zeigt, wie im Stammlayout dem leeren Rahmen am rechten Rand der Rechten Seite ein Namen gegeben wird: Man klickt ihn an und benutzt das obere Feld in der Palette "Objektkoordinaten", um ihn zu benennen.

Anschließend bekommt das entsprechende Rechteck auf der linken Stammseite genau denselben Namen. Damit ist das Stammlayout entsprechend vorbereitet.

Bild 3:
Benannte Rahmen in Stammseiten
Zu Bild 3:
Bild platziert
Teil 4:

Zurück zum Layout. Für den Test wurde, basierend auf dem Stammlayout, in dem Dokument ein Layout mit mehreren Seiten angelegt. Auf Seite fünf wurde ein Bild in den leeren Rahmen gezogen.

(Zugegeben, das Bild mit den Schafen auf einer Rheinwiese passt nicht ganz zum Text ;-)

Bild 4:
Benannte Rahmen in Stammseiten
Zu Bild 4:
Seite einfügen
Teil 5:

Danach wird oberhalb von Seite fünf ein Seitenzwischenraum angeklickt und mit dem Kontextmenü eine neue Seite eingefügt. Damit wird aus der bisherigen Seite 5 die Seite 6. Und damit wird aus der rechten Seite eine linke!

Bild 5:
Benannte Rahmen in Stammseiten
Zu Bild 5:
Das Ergebnis
Bild 6:
Benannte Rahmen in Stammseiten
Teil 6:

Wie die Abbildung zeigt, erscheint das Bild auf der Seite sechs jetzt korrekt in dem Rechteck oben links am Rand. Dies konnte nur funktionieren, weil RagTime an den gleichen Namen der Rechtecke diese einander zuordnen konnte.

Unten sieht man das Ergebnis derselben Aktion, wenn die Rechtecke im Stammlayout nicht gleich benannt sind: RagTime platziert das Bild auf Seite 6 genau dort, wo es sich vorher auf Seite 5 befand.

Zusammenfassend noch einmal die Regeln für dieses Verhalten, zitiert aus dem InfoMail 136:

Dieses Verhalten ist allgemeiner. Es greift immer, wenn einer Layout-Seite eine andere Stammseite zugeordnet wird:

  • Bei doppelseitigen Stammlayouts wird durch Seiteneinfügen aus einer linken Seite eine rechte oder umgekehrt.
  • Ein Bild ist auf einer letzten Seite platziert, durch mehr Text wird diese Seite zur vorletzten und dafür ist eine andere Stammseite festgelegt.
  • Es wird in der Layout-Information unter "Seiten" manuell eine andere Stammseite zugewiesen.
  • Es wird in der Layout-Information unter "Allgemein" ein ganz anderes Stammlayout zugewiesen.

Natürlich gilt dies alles nicht nur für Bilder auf einer Seite sondern auch für Tabellen oder andere Komponenten. Sobald sich aus einem dieser Gründe die Stammseite für eine Layoutseite ändert, verfährt RagTime wie folgt mit Rahmen, die von der alten Stammseite abhängen:

  • Ist der Rahmen auf der Seite leer, wird er entfernt.
  • Enthält der Rahmen eine Komponente, die bereits auf der Stammseite platziert wurde, wird der Rahmen entfernt.
  • Enthält der Rahmen eine Komponente, die im Layout platziert wurde, prüft RagTime zuerst, ob der Rahmen einen Namen hat und ob es auf der neuen Stammseite einen Rahmen mit demselben Namen gibt.
    • Wenn Ja, wird der alte Rahmen entfernt, der Inhalt aber im gleichnamigen Rahmen der neuen Seite platziert.
    • Wenn nein, bleiben Rahmen und Inhalt an der alten Position bestehen, hängen aber nicht mehr von der Stammseite ab.
Anhang Größe
Dokument.rtd 149.14 KB
Notiz_Doppelseitig.rtt 69.16 KB