SVGTransform

Baseline 已廣泛支援

此特性已相當成熟,可在許多裝置和瀏覽器版本上使用。自 ⁨2015 年 7 月⁩以來,各瀏覽器均已提供此特性。

SVGTransform 介面反映了 SVGTransformList 中一個元件的變換;因此,一個 SVGTransform 物件對應於 transform 屬性中的一個單獨元件(例如 scale(…)matrix(…))。

SVGTransform 物件可以被指定為只讀,這意味著嘗試修改該物件將導致丟擲異常。

例項屬性

type

由該介面上定義的 SVG_TRANSFORM_* 常量之一指定的該值的型別。

angle

作為浮點數值的角度。這是 SVG_TRANSFORM_ROTATESVG_TRANSFORM_SKEWXSVG_TRANSFORM_SKEWY 的便捷屬性。對於 SVG_TRANSFORM_MATRIXSVG_TRANSFORM_TRANSLATESVG_TRANSFORM_SCALEangle 將為零。

matrix

作為 DOMMatrix 的矩陣,表示此變換。矩陣物件是活動的,這意味著對 SVGTransform 物件所做的任何更改都會立即反映在矩陣物件中,反之亦然。如果矩陣物件被直接更改(即,不使用 SVGTransform 介面本身的方法),則 SVGTransform 的型別將更改為 SVG_TRANSFORM_MATRIX

例項方法

setMatrix()

將變換型別設定為 SVG_TRANSFORM_MATRIX,並使用引數 matrix 定義新的變換。請注意,引數 matrix 的值將被複制。

setTranslate()

將變換型別設定為 SVG_TRANSFORM_TRANSLATE,並使用引數 txty 定義平移量。

setScale()

將變換型別設定為 SVG_TRANSFORM_SCALE,並使用引數 sxsy 定義縮放量。

setRotate()

將變換型別設定為 SVG_TRANSFORM_ROTATE,並使用引數 angle 定義旋轉角度,使用引數 cxcy 定義可選的旋轉中心。

setSkewX()

將變換型別設定為 SVG_TRANSFORM_SKEWX,並使用引數 angle 定義傾斜量。

setSkewY()

將變換型別設定為 SVG_TRANSFORM_SKEWY,並使用引數 angle 定義傾斜量。

靜態屬性

SVG_TRANSFORM_UNKNOWN (0)

單元型別不是預定義單元型別之一。嘗試定義此型別的新值或嘗試將現有值切換為此型別是無效的。

SVG_TRANSFORM_MATRIX (1)

matrix(…) 變換。

SVG_TRANSFORM_TRANSLATE (2)

translate(…) 變換。

SVG_TRANSFORM_SCALE (3)

scale(…) 變換。

SVG_TRANSFORM_ROTATE (4)

rotate(…) 變換。

SVG_TRANSFORM_SKEWX (5)

skewx(…) 變換。

SVG_TRANSFORM_SKEWY (6)

skewy(…) 變換。

規範

規範
Scalable Vector Graphics (SVG) 2
# InterfaceSVGTransform

瀏覽器相容性