HOME - SMIL: Version 2.1 vom 30.06.2005 © Wolfgang von Keitz


Vorwort
Grundlagen

Layout

Zeit
Bild, Text und Ton
SMIL und HTML
Referenz
Beispiele
Anhang
Quellen

2. Layout

2.5. Das <topLayout>-Element

Das MultiWindowLayout-Konzept ist eine Erweiterung des BasicLayout-Konzepts. Im BasicLayout-Konzept gehen wir von einem Playerfenster aus, in dem mit Hilfe des <region>-Elements verschiedene Präsentationsfenster definiert werden können. Mit Hilfe des <topLayout>-Elements des MultiWindowLayout-Konzepts ist es möglich, innerhalb einer Präsentation mehrere Playerfenster zu definieren, denen wiederum mehrere Präsentationsfenster zugeordnet sein können. In SMIL 2.0 wird also die Vorstellung von einem einzigen root-Fenster aufgegeben. Wir sprechen nunmehr vom top-level-Fenster. Die Möglichkeiten des <topLayout>-Elements sollen an zwei Beispielen demonstriert werden:

Das <topLayout>-Element ist also dem <root-layout>-Element vergleichbar. Allerdings gelten folgende Abweichungen:

  • ein einzelner <layout>-Abschnitt kann mehrere <topLayout>-Elemente aber nur ein <root-layout>-Element beinhalten; wird das <root-layout>-Element mit <topLayout>-Elemente kombiniert, hat das <root-layout>-Element die erste Priorität; es wird dann als Hauptfenster betrachtet, neben dem weitere Fenster mit dem <topLayout>-Element geöffnet werden können.
  • jeder <topLayout>-Abschnitt kann mehrere <region>-Elemente als Elemente nächst niedriger Stufe enthalten; für das <root-layout>-Element sind die <region>-Elemente Elemente der selben Stufe.
  • <topLayout>-Elemente besitzen Steuerattribute (open, close), die bestimmen, wann ein Fenster sich automatisch öffnet oder schliesst. Verzichtet man auf das <root-layout>-Element und benutzt ausschliesslich <topLayout>-Elemente kann die Funktionalität des <root-layout>-Elements über die Attributewerte open="always" und close="onRequest" erreicht werden.

Ein Playerfenster mit mehreren top-level-Fenstern wird mit Hilfe des <topLayout>-Elements definiert. Beispiel (Quelle: SMIL, W3C, 2001):

<smil xmlns="http://www.w3.org/2001/SMIL20/Language"> <head> <layout> <topLayout width="220" height="240" id="WinV" title="Video"> <region id="pictures" title="pictures" height="100%" fit="meet" /> </topLayout> <topLayout width="220" height="60" id="WinC" title="Captions"> <region id="captions" title="captions text" top="90%" fit="meet" /> </topLayout> </head> </layout> <body> ....... <body> </smil>

In diesem Beispiel werden die Fenster WinV und WinC und die Präsentationsfenster pictures und captions definiert, wobei pictures WinV und captions WinC zugeordnet ist.

Das topLayout-Element legt die Größe des top-level-Fensters fest, in dem Präsentationsfenster definiert werden können, und es legt unter anderem fest, wann ein Fenster geöffnet und geschlossen werden soll.

Das <topLayout>-Element kenn neben den Kernattributen und den Testattributen die folgenden Attribute:

  • backgroundColor Das Attribute füllt das Fenster mit der Farbe aus, die nicht vom Medienobjekt selbst belegt wird. Voreinstellung ist transparent.
  • height Höhenangabe Pixel oder Prozentwerte.
  • width Breitenangabe in Pixel oder Prozentwerte.
  • close legt fest, wann des Fenster geschlossen werden soll. Es können folgende Attributwerte benutzt werden:
    • onRequest das Fenster wird nicht durch die Anwendung sondern nur durch den Nutzer geschlossen (Voreinstellung);
    • whenNotActive das Fenster wird geschlossen, wenn kein Medienobjekt mehr präsentiert wird.
  • open legt fest, wann des Fenster geöffnet werden soll. Es können folgende Attributwerte benutzt werden:
    • onStart das Fenster wird bei Präsentationsbeginn geöffnet; (Voreinstellung);
    • whenActive das Fenster wird geöffnet, wenn ein Medienobjekt präsentiert wird.

Im folgenden Beispiel wird mit Hilfe des <root-layout>-Elements und des <region>-Elements ein Playerfenster definiert, in dem ein Video abläuft. Nach 2 Sekunden öffnet sich ein zweites Fenster, in dem ein Bild gezeigt wird. Das zweite Fenster wird nach 5 Sekunden geschlossen. Wichtig ist, dass das im Player gezeigte Video eine eigene id besitzt.

zurueck top weiter