SVGLength: newValueSpecifiedUnits() 方法
SVGLength
接口的 newValueSpecifiedUnits()
方法使用关联的 unitType
以数字形式重置值,从而替换对象上所有属性的值。
语法
js
newValueSpecifiedUnits(unitType, valueInSpecifiedUnits)
参数
unitType
-
一个常量,表示长度值应转换到的单位类型。这必须是为
unitType
属性定义的常量值之一,但SVG_LENGTHTYPE_UNKNOWN
除外。SVGLength.SVG_LENGTHTYPE_NUMBER
:转换为无单位数字SVGLength.SVG_LENGTHTYPE_PERCENTAGE
:转换为百分比SVGLength.SVG_LENGTHTYPE_EMS
:转换为 em 单位SVGLength.SVG_LENGTHTYPE_EXS
:转换为 ex 单位SVGLength.SVG_LENGTHTYPE_PX
:转换为像素SVGLength.SVG_LENGTHTYPE_CM
:转换为厘米SVGLength.SVG_LENGTHTYPE_MM
:转换为毫米SVGLength.SVG_LENGTHTYPE_IN
:转换为英寸SVGLength.SVG_LENGTHTYPE_PT
:转换为点 (points)SVGLength.SVG_LENGTHTYPE_PC
:转换为派卡 (picas)
valueInSpecifiedUnits
-
以指定的单位表示的长度值的数值因子。
返回值
无(undefined
)。
异常
此方法可能会抛出以下类型之一的DOMException
:
NotSupportedError
DOMException
-
如果
unitType
是SVG_LENGTHTYPE_UNKNOWN
或不是有效的单位类型常量,则抛出异常。 NoModificationAllowedError
DOMException
-
如果
SVGLength
对应于只读属性,或者对象本身是只读的,则抛出异常。
示例
使用特定单位设置长度值
js
// Get an SVGLength object
const svg = document.querySelector("svg");
const length = svg.createSVGLength();
// Set a new value with specific units
length.newValueSpecifiedUnits(SVGLength.SVG_LENGTHTYPE_NUMBER, 45);
console.log(length.valueInSpecifiedUnits); // Output: 45
console.log(length.unitType); // Output: 1 (SVG_LENGTHTYPE_NUMBER)
console.log(length.value); // The value converted to the user coordinate system
// Change the value to pixels
length.newValueSpecifiedUnits(SVGLength.SVG_LENGTHTYPE_PX, 100);
console.log(length.valueInSpecifiedUnits); // Output: 100
console.log(length.unitType); // Output: 5 (SVG_LENGTHTYPE_PX)
规范
规范 |
---|
Scalable Vector Graphics (SVG) 2 # __svg__SVGLength__newValueSpecifiedUnits |
浏览器兼容性
加载中…