SVGTransformList: createSVGTransformFromMatrix() Methode

Baseline Widely available

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

Die Methode createSVGTransformFromMatrix() des SVGTransformList Schnittstelle erzeugt ein SVGTransform Objekt, das zu einer Transformation des Typs SVG_TRANSFORM_MATRIX initialisiert wird und dessen Werte die angegebene Matrix sind.

Die Werte des Parameter-Matrix werden kopiert; die Matrix-Parameter wird nicht als SVGTransform::matrix übernommen.

Syntax

js
SVGTransformList.createSVGTransformFromMatrix(matrix)

Parameter

matrix

Ein DOMMatrix Objekt; die Transformationsmatrix.

Rückgabewert

Ein SVGTransform Objekt.

Beispiele

Erstellen einer Transformation aus einer Matrix

html
<svg width="200" height="200">
  <rect width="100" height="100" fill="blue" />
</svg>
js
const svgElement = document.querySelector("svg");
const rectElement = svgElement.querySelector("rect");

// Access the transform list of the <rect> element
const transformList = rectElement.transform.baseVal;

// Create a DOMMatrix object for a rotation transformation
const rotationMatrix = new DOMMatrix();
rotationMatrix.a = Math.cos(Math.PI / 4); // 45-degree rotation
rotationMatrix.b = Math.sin(Math.PI / 4);
rotationMatrix.c = -Math.sin(Math.PI / 4);
rotationMatrix.d = Math.cos(Math.PI / 4);

// Create an SVGTransform object from the matrix
const svgTransform = transformList.createSVGTransformFromMatrix(rotationMatrix);

// Append the new transformation to the transform list
transformList.appendItem(svgTransform);

console.dir(svgTransform); // Output: SVGTransform { type: 1, matrix: SVGMatrix, angle: 0 }

Spezifikationen

Specification
Scalable Vector Graphics (SVG) 2
# __svg__SVGTransformList__createSVGTransformFromMatrix

Browser-Kompatibilität

BCD tables only load in the browser

Siehe auch