HTML and CSS Reference
In-Depth Information
verwenden, muss zunächst ein Objekt vom Typ canvasGradient oder canvasPattern
erstellt und bearbeitet werden. Um einen neuen Verlauf zu erzeugen, können wir
folgende Methoden nehmen:
canvasGradient createLinearGradient(in float x0, in float y0, in float x1,
in float y1);
canvasGradient createRadialGradient(in float x0, in float y0, in float r0,
in float x1, in float y1, in float r1);
createLinearGradient erwartet je zwei x-/y-Koordinaten, die als Start-und Endpunkt
des zu erstellenden Verlaufs verstanden werden können. Stellen Sie sich vor, wie die
beiden Punkte eine Linie im aktuellen Canvas definieren. An dieser Stelle wurden noch
keinerlei Farbwerte für den Verlauf zugewiesen.
Um nun den Farbverlauf zu definieren, wird die Methode addColorStop() benutzt. Der
erste Parameter kann ein Wert von 0 bis 1 sein und definiert prozentual, ab welcher Stelle
im Verlauf der zweite Parameter, ein beliebiger CSS-Farbwert, zur Wirkung kommt.
Bild 2.18: Definition eines Farbverlaufs mit addColorStop() .
//linearGradient
var linearGradient;
for (i 0; i<6; i++)
{
linearGradient ctx.createLinearGradient(i*46, 0, (i*46)+40,
Math.floor((40/5)*i)); //absolute to canvas!!
linearGradient.addColorStop(0, 'rgb(255,0,0)');
linearGradient.addColorStop(0.5, 'rgb(0,255,0)');
linearGradient.addColorStop(1, 'rgb(0,0,255)');
ctx.fillStyle linearGradient;
ctx.fillRect(i*46,10,40,40);
}
Recht ähnlich wird die Methode createRadialGradient() benutzt, um kreisförmige
Verläufe zu erstellen. Die Parameter der Methode geben wie bei
createLinearGradient() nicht die zu verwendenden Farben an, sondern definieren
zwei Kreise, die wiederum als Start- und Endkreis bezeichnet werden können. Betrach-
ten wir einen solchen Methodenaufruf genauer:
var radialGradient ctx.createRadialGradient(140,150,0,140,150,50);
Die drei Parameter 140,150,0 geben dabei den Startkreis des Verlaufs an. Am Punkt
(140, 150) wird der Startkreis mit 0 Pixeln Radius definiert. Es folgt die Definition des
Search WWH ::




Custom Search