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 createSVGTransformFromMatrix()-Methode der SVGTransformList-Schnittstelle erstellt ein SVGTransform-Objekt, das zu einer Transformation des Typs SVG_TRANSFORM_MATRIX initialisiert wird und dessen Werte die gegebene Matrix sind.

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

Syntax

js
createSVGTransformFromMatrix(matrix)

Parameter

matrix

Ein DOMMatrix-Objekt; die Transformationsmatrix.

Rückgabewert

Ein SVGTransform-Objekt.

Beispiele

Erstellung 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