Erzeugen von Filmen mit Macromedia Flash

Werbung
Interaktive, dynamische Animationen
für HTML-Seiten mit
Macromedia Flash und Macromedia Generator
von Tanja Schniederberend
im Rahmen des Seminars
Film und Animation
Unter der Leitung von Prof. Dr. Vornberger
Universität Osnabrück
Gehalten am
05.11.1999
Inhaltsverzeichnis
1. Erzeugen von Filmen mit Macromedia Flash
2
1.1
Was ist Flash?
2
1.2
Importieren von Grafiken in Flash
2
1.3
Erzeugen einer Schaltfläche mit Macromedia Flash
3
1.4
Erstellung eines Films mit Bewegung und Formänderung
7
1.5
Einbinden von SWF-Files
8
Erzeugen von Filmen mit Hilfe des Macromedia Generators
9
2.1
Was ist der Generator?
9
2.2
Einsatzbereiche von Variablen
9
2.3
Wo werden den Variablen die Werte zugewiesen?
9
2.4
Was macht der Offline Generator?
10
2.5
Benutzung des Offline Generators
10
2.6
Erzeugen von Diagrammen aus externen Datenquellen
10
2.7
Was macht der Online Generator?
13
2.8
Wie benutzt man den Online Generator?
13
2.9
Erstellung eines Films mit Variablenübergabe
13
2.10 Beispiel einer dynamischen Datenbankanbindung
3
2
Fazit
14
16
3.1
Erkenntnisse aus der Arbeit mit Macromedia Flash
16
3.2
Erkenntnisse aus der Arbeit mit dem Macromedia Generator
16
3.3
Informationsmaterial
16
Anmerkung:
Um die Beispiele mit der deutschen als auch der englischen Version möglichst einfach nachvollziehen
zu können, steht nach der jeweiligen Angabe des Flash-Befehls in deutsch der dazugehörige englische
Befehl in Klammern dahinter.
1
1. Erzeugen von Filmen mit Macromedia Flash
1.1 Was ist Flash?
Flash Studio ist ein Editor zum Erzeugen von Vektorgrafiken, Animationen mit
Soundeffekten und interaktiven Elementen.
Das Shockwave Flash Format (SWF) wird oft einfach mit Flash bezeichnet. In diesem Format
werden Vektorgrafiken und ihre relativen Änderungen gespeichert. Durch einmaliges Speichern gleicher Symbole (in Flash Bibliothekelemente), gleicher Formen und die Wiederbenutzung von Elementen mit anderen Eigenschaften (z.B.: Farbe, Größe, Position, ...) ist dieses
Format äußerst platzsparend.
Aus diesem Grund ist das SWF-Format besonders interessant für Web-Anwendungen.
Einfach zu erzeugen ist ein solches File in Flash Studio, jedoch können die hiermit erzeugten
Filme auch in anderen Formaten gespeichert und weiter genutzt werden.
Zur Verfügung stehen z.B. AVI-Filme und animierte GIFs, also eine Folge von Pixelgrafiken,
bei denen jedoch jede mögliche Form der Interaktivität verloren geht. Ebenso wird diese Information auch beim Speichern von Sequenzen, z.B. in PNG, EMF, also dem von Einzelbildern, oder einzelner Pixelgrafiken wie GIFs, BMPs oder JPGs verworfen.
Trotz allem ist dies eine wichtige Hilfe, um ohne Mehraufwand auch Ersatzdarstellungen für
SWF-Filme zu generieren.
1.2 Importieren von Grafiken in Flash
Beim Start von Flash 3 Studio wird standardmäßig ein leerer Film geöffnet. Das so gestartete
Programm hat damit folgendes Erscheinungsbild, siehe Abb.1.2.0.
Abbildung 1.2.0 :
Leere Oberfläche von
Flash 3
Die weiße Fläche ist die zu bearbeitende Filmebene. Auf ihr werden die Elemente (grafische
Objekte) gezeichnet und angeordnet. Zum Verwenden schon existierender Grafiken können
auch vorhandene importiert und dann weiter bearbeitet werden.
2
Als Beispiel soll nun der Import eines jpeg-Files beschrieben werden. Dazu wird mit Datei
→ Import (File → Import) ein Auswahlmenü geöffnet, in dem das zu importierende
Bild ausgewählt werden kann, welches dann automatisch auf der Filmebene erscheint.
Da es sich jedoch um eine Pixelgrafik handelt, kann das Bild so in Flash nicht weiter bearbeitet werden. Dazu kann man es in eine Vektorgrafik konvertieren, indem man mit
Modifizieren → Bitmap nachzeichnen... (Modify → Trace Bitmap...) ein
Menü öffnet, in dem die Genauigkeit und damit auch die Größe der entstandenen Vektorgrafik bestimmt werden kann.
Der Wert im Feld „Farbschwelle” (Color Threshold) bezeichnet die maximale Differenz der RGB-Farbwerte, die dazu führt, daß benachbarte Pixel als gleichfarbig erkannt
werden. Das heißt, je kleiner der Wert, desto genauer werden Farbunterschiede wahrgenommen. Dies führt jedoch auch zu einer wesentlich größeren Datei.
Die Anzahl der umgebenden Pixel, die zur Bestimmung der Farbe eines hinzugezogen werden, wird in dem Feld „Kleinste Fläche” (Minimum Area) eingetragen. Um so kleiner
dieser Wert, um so weniger verwischen die Farben ineinander.
Die sich so ergebenen Farben können noch durch die „Kurvenanpassung” (Curve Fit),
also die Angabe des zu benutzenden Übergangs zwischen zwei Flächen, geändert werden, wie
auch durch die Auswahl der „Kantenschwelle” (Corner Threshold). Diese bestimmt
ob Flächenkanten geglättet oder Kanten beibehalten werden sollen.
Für eine möglichst ähnlich erscheinende Vektorgrafik zum Ursprungsbild eignen sich die
folgenden Werte:
80
Farbschwelle:
1 Pixel
Kleinste Fläche:
Pixel
Kurvenanpassung:
Viele Kanten
Kantenschwelle:
1.3 Erzeugen einer Schaltfläche mit Macromedia Flash
Die soeben eingefügte Grafik läßt sich auch als Schaltfläche nutzen. Dazu muß ein
Schaltflächen-Symbol daraus gemacht werden. Dies geschieht mit Einfügen → Symbol
erstellen... (Insert → Convert to Symbol...), wenn die gesamte Grafik selektiert ist.
Das Symbol wird mit einem Namen angesprochen, der nun einzugeben ist und in der Bibliothek des aktuellen Filmes abgelegt wird. Dadurch kann das Symbol mehrfach genutzt werden,
obwohl es nur einmal gespeichert wird. Zur Auswahl stehen drei verschiedene Typen von
Symbolen:
1. Grafik (Graphic)
Einfache Grafik, die mehrfach verwendet werden soll
2. Schaltfläche (Button)
Symbol mit Interaktivität, zu benutzen wie ein Knopf
3. Filmsequenz (Movie Clip) Ein Teil oder ein ganzer erstellter Film
Die nun mit einem Namen entstandene Schaltfläche läßt sich wie alle anderen Symbole eines
Filmes in der Bibliotheksliste (Abb. 1.3.1) wiederfinden. Diese kann man sich mit Fenster
→ Bibliothek (Window → Library) anzeigen lassen.
3
Abbildung 1.3.1:
Bibliotheksliste
Um den Button weiter zu bearbeiten, kann man ihn in der Bibliothek
doppelklicken oder oben rechts in der Bibliotheksliste auf den
Optionenpfeil klicken und dann bearbeiten (edit) auswählen.
Damit hat sich die über der Arbeitsfläche befindliche Leiste verändert,
vergleiche Abb.1.4.0.
Abbildung 1.3.2:
Schaltflächenleiste
Die aktuelle Arbeitsfläche stellt
Erscheinungsbild der Schaltfläche
Zustände:
1. Normal (Up)
2. Darüber (Over)
nun nicht mehr den ganzen Film, sondern nur das
dar. Für die existieren vier auf der Leiste erkennbare
Aussehen der Schaltfläche im inaktiven Zustand
Zustand der Schaltfläche, wenn sich der Mauszeiger darüber
befindet
3. Gedrückt (Down)
Zustand bei gedrückter Maustaste
4. Aktiv (Hit)
Der hier bemalte Bereich ist der mauszeigersensitive Bereich,
das hinterlegte Bild ist nie zu sehen.
Automatisch wurde die verwendete Grafik im Zustand „Normal“ eingefügt. Das ist an dem
gefüllten blauen Punkt zu erkennen, der in der Leiste (Abb.1.3.2) unter dem Zustand eingefügt wurde.
Um für die weiteren Zustände auch Bilder einzufügen, klickt man mit der rechten Maustaste
auf das Feld unter dem jeweiligen Zustand. In dem erscheinenden Menü wählt man
„Schlüsselbild einfügen“ (Insert Keyframe), um das Bild aus dem vorhergegangenen Zustand zu übernehmen. Auch hier erscheint nun der blaue Punkt als Anzeige, daß für
diesen Zustand nun eine Grafik vorliegt. Möchte man dies nicht, z.B. für den aktiven Bereich,
so wählt man „Leeres Schlüsselbild einfügen“ (Insert Blank Keyframe). In
diesem Fall wird ein leerer blauer Kreis eingefügt, da keine Darstellung für den Zustand vorhanden ist, der Zustand aber existiert.
Die Bilder verändert man, indem man den jeweiligen Zustand markiert und mit
den Zeichenwerkzeugen (Abb.1.3.3), die sich am linken Rand befinden, bearbeitet. Die dabei für jedes Zeichenwerkzeug verschiedenen Eigenschaften lassen sich in dem unteren Teil der Leiste ändern. In Abb.1.3.3 werden die Eigenschaften des Pfeilwerkzeugs angezeigt, da dieses selektiert ist.
Abbildung 1.3.3:
Zeichenwerkzeuge
Für die Zustände „Darüber“ und „Gedrückt“ kann man sich ein beliebiges
Erscheinungsbild einfallen lassen. Für den Zustand aktiv sollte man allerdings
beachten, daß nur der ausgemalte Teil maussensitiv ist. Um z.B. nur einen Teil
der Grafik als Knopf zu nutzen, muß man für diesen eine ausgemalte Fläche an
der entsprechenden Stelle positionieren.
4
Ist die Schaltfläche fertiggestellt, so gelangt man über Bearbeiten → Film bearbeiten
(Edit → Edit Movie) wieder zurück zur Arbeitsfläche des Filmes. Um sich das Ergebnis
anzusehen, läßt man den Film abspielen: Steuerung → Film testen (Control →
Test Movie).
Damit beim Drücken des Buttons auch eine Aktion ausgeführt wird, muß diese noch dem
Film hinzugefügt werden. Dazu klickt man rechts auf die Instanz des Buttons um das Menü
zu öffnen und wählt „Eigenschaften“ (Properties). In dem aufgehenden Fenster der
Instanzeigenschaften (Instance Properties) (Abb.1.3.4) lassen sich der jeweiligen Instanz
Attribute hinzufügen, wie Farbeffekte oder auch, wie in diesem Beispiel, Aktionen.
Abbildung
1.3.4:
Fenster der
Instanzeigenschaften
Nach dem Wechsel auf die Karteikarte Aktionen (Actions), die nur für Schaltflächen
möglich sind, läßt sich durch drücken des ✚ -Knopfes das Auswahlmenü von möglichen
Aktionen (Abb.1.3.5) öffnen.
Abbildung 1.3.5:
Aktionsmöglichkeiten für
Schaltflächen
Um die erstellte Schaltfläche auf einen Mausklick reagieren zu
lassen, benutzt man die Aktion „On MouseEvent“, die dann
automatisch in entsprechender Syntax in das weiße Fenster eingefügt wird. (Vergleiche Abb. 1.3.6)
Um wie üblich Knöpfe erst beim Loslassen funktionieren zu lassen, markiert man als Ereignis (Event) „Release“. An dieser
Stelle können auch mehrere unterschiedliche Situationen ausgewählt werden.
Damit ist der Moment, in dem das Ereignis, z.B. der Aufruf einer anderen Webseite, geschehen soll, festgelegt worden. Das Ereignis bestimmt man mittels einer Aktion, z.B. „Get
URL“. Die URL wird dann in dem rechten Fenster eingetragen.
5
Abbildung 1.3.6:
Fertige Aktion zum Aufruf einer
URL.
Aktionen können beliebig
geschachtelt und damit dem
jeweiligen Zweck angepaßt
werden.
Um die Funktion der Schaltfläche noch vor dem Einbinden in eine HTML-Seite in Flash zu testen, kann man sich im Ausgabefenster (Abb. 1.3.7),
das erhält man unter Fenster → Ausgabe (Window → Output), die Aktionen beim
Knopfdruck anzeigen lassen. Dazu läßt man den Film wieder abspielen: Steuerung →
Film testen (Control → Test Movie) und drückt die erstellte Schaltfläche. Hierbei
sollte dann eine schriftliche Ausgabe des festgelegten Ereignisses in dem Fenster erscheinen,
wenn es nicht im Flash Player dargestellt werden kann.
Abbildung 1.3.7:
Ausgabefenster
nach einem
Knopfdruck
Funktioniert alles wie gewünscht, ist es an der Zeit den Film im passenden Format für eine
Webseite zu exportieren. Dazu wählt man Datei → Film exportieren... (File →
Export Movie) und speichert ihn als Shockwave Flash (*.swf) File. An dieser Stelle ist es
auch möglich Ersatzdarstellungen für den Film abzuspeichern, siehe auch Kapitel 1.1.
Nach der Auswahl, in welchem Format der Film gespeichert werden soll, öffnet sich das entsprechende Fenster (Abb. 1.3.8) mit den zu treffenden Einstellungen über Größe und Qualität
des Filmes, Bildes oder der Sequenz.
Abbildung 1.3.8:
Exporteinstellungen für ein SWF-File
Mit der Einstellung „Ladefolge“
(Load Order) wird die Reihenfolge
der Daten des ersten Bildes, für den
Fall, daß das Bild nicht sofort vollständig geladen werden kann, bestimmt.
Informationen über die Größe des
Films werden beim Markieren von
„Bericht
erstellen“
(Generate size report) in einer
Textdatei abgelegt. In ihr kann man
genau erkennen welche Szene und welches Symbol wieviel Platz verbraucht.
6
„Vor Import schützen“ (Protect from import) ist auszuwählen, wenn das
erzeugte File nicht von anderen weiterbearbeitet werden soll.
Der Wert für „JPEG Quality“ ist nur für Filme relevant in denen Pixelgrafiken genutzt
werden. Je genauer die zu speichernden Pixelgrafiken sein sollen, desto höher muß dieser
Wert gewählt werden, was sich natürlich wieder in der Größe der Datei widerspiegelt. Die
weiteren Einstellungen behandeln die Komprimierung von Audiodaten.
Für anfängliche Versuche können die Voreinstellungen an dieser Stelle einfach übernommen
werden.
1.4 Erstellung eines Films mit Bewegung und Formänderung
Die Zeitleiste (Abb.1.4.0) stellt den zeitlichen Ablauf der Frames des Filmes dar. Die Anzahl
der Frames ist auf der oberen Skala abzulesen. Die Reihen darunter geben die jeweiligen
Ebenen an, in denen sich die Grafiken befinden. Die Bilder der obersten Ebene werden dabei
über die der zweiten gelegt und die wiederum verdecken die der dritten Ebene usw. Begrenzt
wird die Anzahl der Frames, welche die Länge des Films bestimmen, durch das am weitesten
hinten liegende in irgendeiner Ebene der Zeitleiste.
Abbildung 1.4.0: Zeitleiste eines kleinen fertigen Films
Ein Bild wird eingefügt über „Schlüsselbild einfügen“ (Insert Keyframe) oder
„Leeres Schlüsselbild einfügen“ (Insert Blank Keyframe), vergleiche
Kapitel 1.3.
Fügt man nun ein Symbol in das erste Schlüsselbild einer Ebene ein und dann an späterer
Stelle, z.B. an der 20. Stelle, das gleiche nur mit einer veränderten Position ein, so kann man
diesen Positionswechsel durch eine fließende Bewegung darstellen. Dazu öffnet man das Fenster der „Bildeigenschaften“ (Frame Properties), indem man zwischen den beiden
eingefügten Bildern mit rechter Maustaste klickt und „Eigenschaften...“
(Properties...) auswählt. Auf der Karteikarte „Tweening“ läßt sich im Auswahlmenü
„Bewegung“ (Motion) angeben, mit dazu ergänzenden Eigenschaften, wie Drehungen des
Symbols während der Positionsveränderung oder auch zeitliche Verzögerung. Ist der Dialog
wieder geschlossen, so berechnet Flash direkt die nötigen Bilder für die Zwischenschritte der
Schlüsselbilder. Die so erzeugte Bewegung wird in der Zeitleiste der jeweiligen Ebene als
roter Pfeil zwischen den nun roten Punkten der Schlüsselbilder dargestellt, siehe auch
Abb.1.4.0.
Fast genauso läßt sich auch eine Formänderung erreichen. Dabei muß man allerdings beachten, daß keine Symbole verformt werden können. So erstellt man also zwei voneinander
unabhängige Grafiken zu verschiedenen Zeitpunkten, die sich in nichts ähnlich sein müssen,
auch nicht in der Farbe. Unter „Tweening“ wählt man nun „Form“ (Shape) aus. In diesem Fall wird der Übergang in der Zeitleiste als grüner Pfeil symbolisiert.
Zum Testen der Bewegung auf der Arbeitsfläche läßt sich einfach die Return-Taste drücken,
ansonsten läßt sich der Film in einem Flash Player betrachten, dazu wählt man „Steuerung
→ Film testen“ (Control → Test Movie), vergleiche Kapitel 1.3.
7
1.5 Einbinden von SWF-Files
Ein SWF-File kann direkt über einen Link aufgerufen werden.
Um den erstellten Film aber in einer HTML-Seite zu präsentieren, wird er mittels des
OBJECT-Tags eingebunden. Da dieses nicht von allen Browsern erkannt wird, z.B. älteren
Versionen von Netscape, hilft der in dem OBJECT-Tag eingefügte EMBED-Tag, um in den
verbreitetsten Browsern die Darstellung zu garantieren.
Prinzipiell unterscheiden sich die beiden Tags nur in ihrem Aufbau. Datenquelle, Größe und
Farbe des einzubindenden Files können in beiden Tags angegeben werden.
Im OBJECT-Tag ist die „classid“ anzugeben, die die zu verwendende ActiveX-Steuerung
identifiziert. Dieser Wert bleibt für jeden Flash Film gleich. Außerdem wird die Adresse der
ActiveX-Steuerung für den Fall des Download dem Parameter „codebase“ zugewiesen,
dem nach belieben auch die Angabe der Versionsnummer angehängt werden kann. Alle
weiteren Angaben erfolgen über weitere PARAM-Tags, die bestimmten Parametern Werte
zuweisen, z.B. wird „movie“ die Lage des SWF-Files mitgegeben.
Das EMBED-Tag beinhaltet alle Parameterzuweisungen in sich. „Type“ wird das zu benutzende PlugIn zugewiesen und „pluginspage“ der Link zum Download des PlugIns. Allen
weiteren Parametern können direkt Werte zugewiesen werden, z.B. „bgcolor“ die
Hintergrundfarbe des Films.
Beispiel für das Verknüpfen solcher Tags:
<OBJECT classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000"
codebase="http://active.macromedia.com/flash2/cabs/swflash.cab#version=3,0,
0,0" WIDTH=100 HEIGHT=100>
<PARAM NAME=movie VALUE="../Genvorlagen/File.swf">
<PARAM NAME=quality VALUE=autohigh>
<PARAM NAME=scale VALUE=noborder>
<PARAM NAME=bgcolor VALUE=#FFFFCC>
<EMBED
SRC="../Genvorlagen/File.swf"
WIDTH=100 HEIGHT=100
QUALITY=best TYPE="application/x-shockwave-flash"
PLUGINSPAGE="http://www.macromedia.com/shockwave/download/
index.cgi?P1_Prod_Version=ShockwaveFlash"
BGCOLOR=#FFFFCC>
</EMBED>
<NOEMBED><IMG SRC="../Genvorlagen/Ersatz.gif" WIDTH=100 HEIGHT=100
BORDER=0></NOEMBED>
</OBJECT>
Mit dem Tag „NOEMBED“ kann für den Fall, daß der Player nicht vorhanden oder
deaktiviert ist eine Ersatzdarstellung angegeben werden. Dafür eignen sich die zuvor
erzeugten Ersatzdarstellungen, z.B. wie hier eine GIF-Datei.
8
2
Erzeugen von Filmen mit Hilfe des Macromedia Generators
2.1 Was ist der Generator?
Der Generator besteht aus drei verschiedenen Komponenten:
1. Erweiterungen zum Flash-Editor Ermöglicht das Erstellen von Generatordateien
2. Dem Offline Generator
Zum Generieren von SWF-Files
3. Dem Server (Online Generator) Zur dynamischen Generierung von SWF-Files
In Flash können mit der Editorerweiterung Generatorvorlagen (SWT-Files) erzeugt werden.
Diese unterscheiden sich nur in soweit von den üblichen SWF-Files, daß sie Variablen
enthalten können. Die in den SWT-Files enthaltenen Variablen können vom Online oder
Offline Generator ersetzt und so in gängige Formate umgewandelt werden. Diese hängen
davon ab, welchen Generator man verwendet, siehe Kapitel 2.4 und 2.7.
2.2 Einsatzbereiche von Variablen
Variablen können an verschieden Stellen genutzt werden, indem mit ihnen Textersetzungen
vorgenommen oder auch Aktionen modifizieren werden. So könnte in dem Beispiel aus
Kapitel 1.3 für die URL eine Variable eingesetzt und dann erst bei der Generierung des SWFFiles ein Wert der Variablen zugewiesen werden. Damit ist der Knopf mehrfach benutzbar.
Auch können Variablen dazu dienen die zu benutzenden Symbole eines Filmes zu bestimmen,
indem sie statt dem Symbolnamen verwendet werden. So ist es möglich auch Symbole aus
anderen Bibliotheken zu verwenden, ohne sie von vornherein im Film abzulegen.
Weiterhin können Variablen dazu genutzt werden um Symbol- oder Filmeigenschaften wie
Farbe, Größe oder Transparenz zu ändern. Dazu kommt bei Filmen die Möglichkeit auch die
Abspielrate, also die Schnelligkeit in der die einzelnen Frames abgespielt werden, zu beeinflussen.
Als letztes unterstützt der Generator noch die Erzeugung von Diagrammen, die über
Variablen ihre Werte zugewiesen bekommen. Dazu folgt ein Beispiel in Kapitel 2.6.
2.3 Wo werden den Variablen die Werte zugewiesen?
Das Zuweisen eines Wertes an eine Variable kann an verschiedenen Stellen geschehen. Als
erstes werden im Film fest angegebene Dateien nach den Werten der Variablen durchsucht.
Bei verschachtelten Filmen, also Filme, in die weitere Filme eingefügt wurden, gilt, daß
immer zuerst im eigenen Film nach einer Variablendefinition gesucht wird, bevor dann die
Datenquellen der darüber liegenden Filme betrachtet werden.
Nicht im Film eingebettete Variablenzuweisungen können bei der Generierung dem
Generator mitgegeben werden. Das ist jedoch davon abhängig ob man den Offline- oder
Online-Generator wählt. Dazu mehr in Kapitel 2.5 und 2.8.
9
2.4 Was macht der Offline Generator?
Der Offline Generator erzeugt aus SWT-Files, also den Dateien, die noch Variablen enthalten,
verschiedene Formate. Dabei ersetzt er die Variablen durch die ihnen zugewiesenen Werte
und damit entspricht die Datei nun dem SWF-Format. In erster Linie wird dieses nun auch als
Shockwave Flash (SWF) File gespeichert, aber auch Grafiken, wie GIF, PNG und JPEG
lassen sich daraus generieren. Es ist auch möglich Textdateien, die den ganzen im Film
vorkommenden Text enthalten, zu erzeugen. Dies erleichtert besonders die Suche nach
veralteten Texten, die aktualisiert werden müssen. Weiterhin besteht die Möglichkeit
Projektoren, das sind ausführbare playerunabhängige Programme, für Windows und
Macintosh damit zu erstellen.
2.5 Benutzung des Offline Generators
Der Offline Generator ist ein eigenständiges Programm und wird von der Kommandozeile aus
gestartet.
Ein Aufruf hat dabei folgendes Format:
generate -option filename.xxx [-param name value] [-debug <1|2|3>] [-log file.txt]
filename.swt
option :
Gibt das zu generierende Format (z.B.: swf, gif, jpg, txt, ...) an.
filename.xxx : Name der zu erstellenden Datei mit zum Format passender Endung
param :
Weist einer Variablen name im SWT-File den Wert value zu.
Diese Zuweisung findet erst nach dem Durchsuchen der Datenquellen statt.
debug <1|2|3> : Dient der Fehlerausgabe, die Werte stehen für Errors | &Warnings |
&Datenquellen
log :
Erstellt die Fehlerausgabe in der angegebenen Datei.
filename.swt : Gibt die zu nutzende Generatorvorlage an.
Der Offline Generator eignet sich besonders bei regelmäßigen Änderungen der
Variablenwerte, die nicht benutzerabhängig sind. So lassen sich z.B. aktuelle Preise bei jeder
Änderung neu generieren, aber nicht jedes Mal, wenn ein Benutzer diese abfragt, muß die
Datei neu generiert werden. Um eine solche Aktualisierung auch automatisch laufen zu lassen
ist es möglich den Aufruf des Offline Generators aus einem Perl Script heraus erfolgen zu
lassen oder für die Online-Nutzung aus einem CGI Script.
2.6 Erzeugen von Diagrammen aus externen Datenquellen
Dieses Beispiel dient besonders gut zur Demonstration des Offline Generators, da die Werte,
die einem Diagramm zugrunde liegen, sich häufig in einem gewissen Rhythmus ändern und
nur dann ein neues File erzeugt werden muß und somit nicht bei jedem Aufruf der Datei.
Zu Beginn ist zu beachten, was für ein Diagramm erstellt werden soll, denn je nach Typ
unterscheidet sich der Aufbau der Datendatei. Dazu stehen vier verschiedene Typen zur
Verfügung:
10
1. Das Punktdiagramm
Beispieldatei für Punktdiagrammdaten:
x, y, symbol
Abbildung 2.6.0:
Punktdiagramm
In diesem Diagramm (Scatter)
0, 0, Dot1
(Abb. 2.6.0) werden die Punkte einer
1, 1, Dot1
2, 4, Dot1
Textdatei gezeichnet.
...
Dazu wird in der ersten Zeile „x, y,
0, 0, Dot2
symbol“ angegeben, damit klar ist,
1, 1, Dot2
um welche Koordinate es sich handelt
...
und welches Symbol zur Darstellung
an diesen Punkt gesetzt werden soll.
Als Symbol ist dabei der Name eines beliebigen, in der
Filmbibliothek enthaltenen oder importierten Symbols
anzugeben.
2. Liniendiagramm oder Flächendiagramm:
Beispieldatei für Linienoder Flächendiagramme:
Abbildung 2.6.1:
Liniendiagramm
Abbildung 2.6.2:
Flächendiagramm
value
1
4
9
16
25
36
...
Linien- (Line) (Abb. 2.6.1) und Flächendiagramme (Area) (Abb. 2.6.2) lassen sich aus der
gleichen Datenquelle generieren, da sie dem gleichen Format unterliegen. Schlüsselwort in
der ersten Zeile ist „value“, gefolgt von beliebigen Zeilen mit einem einzigen Wert, der dem
y-Wert entspricht. Die x-Achse wird nach der Anzahl der y-Werte aufgeteilt und dem
entsprechend werden diese dann eingetragen und mit einer Linie oder gefüllten Fläche
verbunden.
3. Histogramm:
Beispieldatei einer Histogrammvorlage:
Abbildung 2.6.3:
Histogramm
value,color
0,
white
10,
#007D00
0,
white
30,
#1AFF1A
0,
white
50,
#4DFBF2
30,
#1AFF1A
30,
#1AFF1A
0,
white
...
Für das Histogramm (Bar) (Abb.2.6.3)
gelten im wesentlichen die gleichen
Grundregeln für die Daten, wie für ein Linien- oder
Flächendiagramm. Hier kommen aber zu den angegebenen yWerten noch die Farben hinzu, mit denen der jeweilige Balken gefüllt wird. Diese können
sowohl mit Namen als auch mit Hexadezimalwert angegeben werden.
11
Um ein solches Diagramm nun in ein SWT-File einzubauen wählt man in Flash Einfügen
→ Vorlagenbefehl (Insert → Template Command). In dem so geöffneten Fenster,
siehe Abb. 2.6.4, wählt man in dem Auswahlmenü „Befehl“ (Command) „Chart“. Nun
kann man durch klicken auf „Chart Type“ den Diagrammtyp auswählen und unter „Data
Source“ die Datendatei angeben.
Abbildung 2.6.4:
Eingabefenster für
Generatorvorlagen, hier für
Diagramme
Hier lassen sich auch die
Skalierung der x- und yAchse vornehmen, indem
man das Minimum und
Maximum der beiden angibt. Ist Border auf „true“ gesetzt, so wird das Diagramm eingerahmt und zwar wie die Linien oder Flächen in der bei „Color“ gesetzten Farbe. Balken im
Histogramm werden natürlich in der Farbe dargestellt, die in der Datei angegeben ist, genauso
wie die Symbole im Punktdiagramm auch ihre Farbe beibehalten.
Sind die Einstellungen vorgenommen und der OK-Knopf gedrückt, so erscheint auf der
Filmebene ein graues Quadrat als Ersatzdarstellung für das später generierte Diagramm.
Dieses läßt sich skalieren und im Film wie gewünscht einbetten.
Die Beschriftung der Diagramme ist zumeist abhängig von dem Datenfile und damit wäre sie
in dem Film falsch plaziert. Um auch diese in einer externen Datei zu verwalten kann man
Variablen einfügen. Dazu benutzt man das Textwerkzeug (Text Tool) am linken Rand bei den
Zeichenwerkzeugen (Abb. 1.3.3).
An der vorgesehenen Stelle plaziert man damit ein Textfeld, in dem dann der Variablenname
eingefügt wird. Damit der Name auch als Variable interpretiert wird setzt man ihn in geschwungene Klammern:
{Variablenname}
Die Angabe woher der Wert der Variablen bezogen werden soll wird im ersten
Schlüsselbild (Keyframe) der Zeitleiste (Abb.1.4.0) gemacht. Dort klickt man mit
rechter Maustaste um im Menü „Eigenschaften...“ (Properties...) auszuwählen.
In dem Fenster der Bildeigenschaften (Frame Properties) wählt man die Karte
„Vorlage“ (Template). Hier lassen sich nun verschiedene Befehle auswählen, die vom
Generator später ausgewertet werden müssen. Zur einfachen Wert bzw. Textzuweisung einer
Variablen dient der Befehl „Set Environment“, der nur die Datenquelle als Textdatei zugewiesen bekommt.
Name,
Value
Diese muß in folgendem Format aufgebaut sein:
titel,
"f(x)=x^2"
Die erste Zeile beinhaltet die Schlüsselwörter „Name,
legende,"d(x)=x"
Value“. Alle weiteren enthalten den jeweiligen Variablen...
namen und mit Komma getrennt und in Anführungsstrichen
den Wert, den die Variable zugewiesen bekommen soll.
Beispiel einer Datenquelle für Variablenzuweisungen
12
Die korrekte Benutzung der Variablen kann mit Steuerung → Film testen (Control
→ Test Movie) in der Vorschau getestet werden. Ist der Film nun fertiggestellt, so speichert man ihn mit Datei → Film exportieren... (File → Export Movie) als
Generator-Vorlage (SWT-File) ab.
Um aus dem SWT-File z.B. eine ausführbare EXE-Datei für Windows zu erzeugen startet
man mit folgendem Aufruf den Offline Generator:
generate –xwin32 Diagramme.exe -debug 3 Diagramme.swt
2.7 Was macht der Online Generator?
Der Online Generator dient ebenfalls zur Erstellung von Shockwave Flash (SWF)-Dateien
oder Grafiken wie GIF, PNG oder JPEG aus den SWT-Files. Er kann jedoch keine
Projektoren erzeugen. Er erzeugt im Gegensatz zum Offline Generator mit jedem Aufruf der
angeforderten Datei das jeweilige Format aus der Vorlage.
2.8 Wie benutzt man den Online Generator?
Sobald eine Seite, die eine SWT-Datei enthält, beim Webserver angefordert wird, schickt
dieser die Datei mit der Variablenzuweisung an den Online Generator. In dem Moment erstellt der Generator aus der Datei den passenden Dateityp und liefert diese an Stelle des SWTFiles an den Webserver zurück, welcher sich nun um das Zurücksenden an den Anfragesteller
kümmert. Die SWT-Dateien werden dabei direkt über ihren Pfad angesprochen oder in dem
jeweiligen HTML-Tag in gleicher Form eingebunden, vergleiche Kapitel 1.5. Dazu gibt es
verschiedene Möglichkeiten:
beispiel.xxt
An der Stelle von xxt wird die jeweilige Endung des Files angegeben, die schon das zu generierende Format angibt. Als solches muß die ursprüngliche SWT-Datei natürlich vorher abgespeichert werden. So wird eine GIF aus einer GIT-Datei erzeugt oder ein JPG aus einer JPTDatei. Wird die Endung einfach als SWT angegeben, so wird automatisch ein SWF-File
erzeugt.
beispiel.swt?type=xxx
Hierbei steht xxx für den zu generierenden Dateityp, z.B. GIF. Dabei braucht nur das SWTFile abgespeichert werden.
Um auch dem Online Generator Variablen mitzugeben werden diese einfach mit ihrem Wert
an die URL angehäng:
beispiel.xxt?name1=value1&name2=value2
In diesem Beispiel werden den Variablen name1 und name2 die Werte value1 bzw.value2
zugewiesen.
Beispiel für den Aufruf zur Erzeugung eines SWF-Files mit Übergabe einer Variablen:
../Genvorlagen/Pfeil.swt?next=index.htm
2.9 Erstellung eines Films mit Variablenübergabe
Zum Verarbeiten von Daten, die der Benutzer eingibt, ist es nötig Variablen zu definieren. So
kann zum Beispiel der Benutzername mit in einen Film eingebunden werden. Dazu schafft
man sich mit dem Textwerkzeug eine Variable (Kapitel 2.6) und gestaltet mit ihr den
entsprechenden Film. Ist das SWT-File fertiggestellt, so muß man sich für die Übergabe eines
Wertes an die Variable ein entsprechendes HTML-Dokument erzeugen.
13
Für das Eingabefeld benutzt man ein Input-Tag vom Typ Text und übermittelt dies mit der
Get-Methode an den Film. Bei dieser Methode wird die Variablenzuweisung mit
„?name=wert“ wie schon in Kapitel 2.8 beschrieben an den Namen des SWT-Files angehängt
und kann somit vom Generator ausgewertet werden.
Das kann wie folgt geschehen:
<FORM ACTION="../Genvorlagen/Name.swt" METHOD="GET">
<br>
<p>Bitte geben Sie Ihren Namen ein:<br>
<INPUT TYPE="TEXT" NAME="name"></p>
<br>
<p><INPUT TYPE="SUBMIT" VALUE="Film starten">
<INPUT TYPE="RESET"></p>
Die in diesem Beispiel mit dem Namen „name“ übermittelte Variable wird nun wie gewohnt
an den Film angehängt.
2.10 Beispiel einer dynamischen Datenbankanbindung
In Flash besteht auch die Möglichkeit Daten aus einer Datenbank einzubinden.
In diesem Fall werden die Daten dynamisch zur Laufzeit aus einer ODBC-fähigen Datenbank,
z.B. MS Access, bezogen und den Variablen zugewiesen.
Dazu stellt man Symbole zusammen, welche die Variablen enthalten. Die Variablennamen
müssen dabei gleich den Attributnamen der Tabelle sein, aus der sie die Werte erhalten sollen.
Die Variablen können zum Beispiel wie in Kapitel 2.6 einen Text vertreten, oder auch ein ein
Symbol. Dazu wählt man beim Bearbeiten eines Symbols Einfügen →
Vorlagenbefehl (Insert → Template Command) und wählt als Befehl „Insert
Symbol“. Auch hier kann statt dem richtigen Symbolnamen ein Variablenname angegeben
werden, die Syntax bleibt dabei die gleiche. Als Vertretung für das spätere Symbol erscheint
ein graues Quadrat auf der Bearbeitungsfläche, das anstelle der richtigen Grafik in den Film
eingefügt wird. Hierbei sollte man beachten, daß die später eingefügten Symbole im Film
enthalten sind oder aus einer anderen SWT-Datei importiert werden müssen. Das geschieht in
den Bildeigenschaften des ersten Schlüsselbildes, indem man auf der Karteikarte „Vorlage“
als Befehl „Import Flash Symbols“ auswählt und die SWT-Datei angibt, welche die
Symbole enthält.
Um die Variablenwerte nun aus einer Datenbank zu beziehen, wechselt man in die Eigenschaften des jeweiligen Symbols und auf die Vorlagenkarte. Da in einer Datenbank nun einer
Variablen meist mehrere Werte zugewiesen werden, muß man den Befehl „Replicate“ verwenden. Dieser sorgt dafür, daß die Werte der Reihe nach der Variablen zugewiesen und ausgewertet werden. Als Datenquelle gibt man im Feld „Data Source“ einen JDBC/ODBCTreiber an, der auf die gewünschte Datenbank zugreift. Dazu wird zunächst der Treibername
für die Datenbank angegeben gefolgt von der URL der Datenbank, die angesprochen werden
soll. Diese muß natürlich zuvor über eine ODBC Schnittstelle verfügen. Nun folgen die
„userid“ und das „password“, die für den Fall, daß diese nicht existieren, trotzdem leer
angehängt werden müssen. Als letztes folgt nun die SQL Anfrage, deren Leerstellen mit
„%20“ ausgefüllt werden müssen, da es sich um eine URL handelt, die keine Leerzeichen
enthalten darf.
14
Ein Beispiel einer solchen URL lautet somit:
fgjdbc:///?driver=sun.jdbc.odbc.JdbcOdbcDriver&url=jdbc:odbc:Produkt
e&userid=&password=&query=SELECT%20*%20FROM%20Produkte;
Ein so erzeugter Film wechselt somit zwischen verschiedenen Darstellungen, z.B. verschiedenen Produkten , wie in dem folgenden Beispiel, in dem sowohl Artikelname, Bestellnummer und Preis wie auch der Symbolname, der die Grafik bestimmt, aus einer Datenbank
bezogen werden:
15
3
Fazit
3.1 Erkenntnisse aus der Arbeit mit Macromedia Flash
Durch die „Lessons“, das sind Beispielfilme in denen der Umgang mit Flash erklärt und
getestet wird, ist ein spielerischer Einstieg in den Umgang mit Flash möglich.
Das verwenden schon vorhandener Grafiken, auch Pixelgrafiken, erleichtert durch die
+
einfache Konvertierung zu Vektorgrafiken die Arbeit.
Leicht zu animierende Objekte und einfaches Morphen lassen schnell verschiedene
+
Effekte erzeugen und ausprobieren. Allerdings läßt sich das Morphen so gut wie gar nicht
beeinflussen, weshalb nicht alle gewünschten Effekte sich so erreichen lassen.
− Leider besteht in Flash 3 bis auf die Möglichkeit von Schaltflächen keine weitere um in
Interaktivität mit dem Benutzer zu treten.
Der geringe Platzbedarf der SWF-Files macht sie gerade für die Verbreitung im Internet
+
sehr interessant.
+
3.2 Erkenntnisse aus der Arbeit mit dem Macromedia Generator
− Leider existiert nicht eine so einfache Einstiegsmöglichkeit für den Generator, was
zusätzlich auch durch die sehr knappe Dokumentation erschwert wird.
− Es läßt sich im Flash Developer Studio leider kein Überblick über alle vorkommenden
Variablen innerhalb des Films verschaffen, wodurch schnell die Überschaubarkeit verloren geht und um Variablennamen wiederzufinden, kann man viel Zeit benötigen.
− Variablen können nur zur Ersetzung benutzt werden und es kann keine konkrete Abarbeitung in Form von Auswertungen oder Schleifen erfolgen. Dies ist aber nun in Flash 4
berücksichtigt worden.
− Durch die Eingabe der SQL-Befehle direkt in die URL werden diese schnell unübersichtlich.
Von Vorteil ist die Möglichkeit die Daten aus externen Quellen zu beziehen, so daß Filme
+
häufiger wieder benutzt und somit wechselnden Daten einfach angepaßt werden können.
Auf diese Art ist auch das Einbinden von Benutzerinformationen in den Film möglich.
Dies ist in Flash 4 weiter ausgearbeitet worden.
3.3 Informationsmaterial
Weiteres Informationsmaterial und Testversionen findet man unter:
Macromedia HomePage
http://www.macromedia.com
Informationen zum SWF-Format
http://www.swift-tools.com
http://homepages.tig.com.au/~dkl/swf/ Seite für Flash-Entwickler
Ressourcen und FAQs
http://www.flashworker.de
Beispiele für mit Macromedia Flash erzeugte Animationen:
Mit Flash erstelltes Spiel
http://www.gigablast.com
Mit Flash erstelltes Adventure
http://www.pepworks.com
Links zu Websites mit Flashanimationen
http://www.eye4u.com
16
Herunterladen