W3cubDocs

/Web APIs

SVGTransform: setScale() method

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⁩.

The setScale() method of the SVGTransform interface sets the transform type to SVG_TRANSFORM_SCALE, with parameters sx and sy defining the scale amounts.

Syntax

setScale(sx, sy)

Parameters

sx

A float defining the scale amount along the X-axis.

sy

A float defining the scale amount along the Y-axis.

Return value

None (undefined).

Exceptions

NoModificationAllowedError DOMException

Thrown if the attribute or the SVGTransform object is read-only.

Examples

>

Scaling an SVG Element

// Select an SVG element and create a transform object
const svgElement = document.querySelector("svg");
const transform = svgElement.createSVGTransform();

// Set the scale values for the transform
transform.setScale(2, 3);

// Output the scale details
console.log(`Scale X: ${transform.matrix.a}`); // Output: 2
console.log(`Scale Y: ${transform.matrix.d}`); // Output: 3

Specifications

Browser compatibility

Desktop Mobile
Chrome Edge Firefox Opera Safari Chrome Android Firefox for Android Opera Android Safari on IOS Samsung Internet WebView Android WebView on iOS
setScale 1 12 1.5 ≤12.1 4 18 4 ≤12.1 3.2 1.0 4.4 3.2

© 2005–2025 MDN contributors.
Licensed under the Creative Commons Attribution-ShareAlike License v2.5 or later.
https://developer.mozilla.org/en-US/docs/Web/API/SVGTransform/setScale