Information Technology Reference
In-Depth Information
Da in Abbildung 5.34 drei verschiedene Bilder zum Zuge kommen und alle drei
vor ihrer Verwendung vollständig geladen sein müssen, bleibt uns nichts ande-
res übrig, als die drei onload -Funktionen ineinander zu verschachteln. Nur so
behalten wir die Kontrolle über die Reihenfolge beim Zeichnen. Der Pseudo-
Code für eine mögliche Schachtelung sieht so aus:
// alle Bilder erzeugen
bg.onload = function() {
// Hintergrund zeichnen
image.onload = function() {
// Bildausschnitte hinzufügen
pat.onload = function() {
// Titel mit Muster füllen
};
};
};
Die einzige Möglichkeit, dieses Verschachteln zu vermeiden, wäre, alle betei-
ligten Bilder im HTML-Code der Seite als über visibility:hidden versteckte
img -Elemente zu verlinken und mit getElementById() oder getElementsByTag-
Name() nach dem Laden der Seite in window.onload() zu referenzieren.
Bevor wir uns mit einem weiteren Abschnitt der Canvas-Spezifikation, den
Transformationen beschäftigen, bleibt abschließend noch festzuhalten, dass
bei der Verwendung eines video -Elements als Quelle für createPattern() ana-
log zur drawImage() -Methode der erste Frame des Videos beziehungsweise der
Poster-Frame, sofern vorhanden, als Muster zum Einsatz kommt.
5.11 Transformationen
Canvas-Transformationen manipulieren direkt das Koordinatensystem. So
wird beim Verschieben eines Rechtecks nicht nur das Element selbst bewegt,
sondern gleich das gesamte Koordinatensystem neu gesetzt und erst dann das
Rechteck gezeichnet. Die drei einfachen Grundtransformationen sind scale() ,
rotate() und translate() .
Search WWH ::




Custom Search