CanvasRenderingContext2D: createRadialGradient()-Methode

Baseline Widely available

This feature is well established and works across many devices and browser versions. It’s been available across browsers since July 2015.

Die CanvasRenderingContext2D.createRadialGradient() Methode der Canvas 2D API erstellt einen radialen Verlauf mithilfe der Größe und Koordinaten zweier Kreise.

Diese Methode gibt ein CanvasGradient zurück. Um auf eine Form angewendet zu werden, muss der Verlauf zuerst den Eigenschaften fillStyle oder strokeStyle zugewiesen werden.

Hinweis: Verlaufkoordinaten sind global, d.h., relativ zum aktuellen Koordinatenraum. Wenn sie auf eine Form angewendet werden, sind die Koordinaten NICHT relativ zu den Koordinaten der Form.

Syntax

js
createRadialGradient(x0, y0, r0, x1, y1, r1)

Die createRadialGradient()-Methode wird durch sechs Parameter spezifiziert, wobei drei den Startkreis des Verlaufs und drei den Endkreis definieren.

Parameter

x0

Die x-Achsen-Koordinate des Startkreises.

y0

Die y-Achsen-Koordinate des Startkreises.

r0

Der Radius des Startkreises. Muss nicht negativ und endlich sein.

x1

Die x-Achsen-Koordinate des Endkreises.

y1

Die y-Achsen-Koordinate des Endkreises.

r1

Der Radius des Endkreises. Muss nicht negativ und endlich sein.

Rückgabewert

Ein radialer CanvasGradient, initialisiert mit den zwei angegebenen Kreisen.

Ausnahmen

NotSupportedError DOMException

Wird ausgelöst, wenn nicht endliche Werte als Parameter übergeben werden.

IndexSizeError DOMException

Wird ausgelöst, wenn ein negativer Radius als Parameter übergeben wird.

Beispiele

Füllen eines Rechtecks mit einem radialen Verlauf

Dieses Beispiel initialisiert einen radialen Verlauf mithilfe der createRadialGradient()-Methode. Danach werden drei Farbstopps zwischen den beiden Kreisen des Verlaufs erstellt. Schließlich wird der Verlauf dem Canvas-Kontext zugewiesen und als gefülltes Rechteck dargestellt.

HTML

html
<canvas id="canvas" width="200" height="200"></canvas>

JavaScript

js
const canvas = document.getElementById("canvas");
const ctx = canvas.getContext("2d");

// Create a radial gradient
// The inner circle is at x=110, y=90, with radius=30
// The outer circle is at x=100, y=100, with radius=70
const gradient = ctx.createRadialGradient(110, 90, 30, 100, 100, 70);

// Add three color stops
gradient.addColorStop(0, "pink");
gradient.addColorStop(0.9, "white");
gradient.addColorStop(1, "green");

// Set the fill style and draw a rectangle
ctx.fillStyle = gradient;
ctx.fillRect(20, 20, 160, 160);

Ergebnis

Spezifikationen

Specification
HTML Standard
# dom-context-2d-createradialgradient-dev

Browser-Kompatibilität

BCD tables only load in the browser

Siehe auch