SVGLength: convertToSpecifiedUnits() 方法

Baseline 已广泛支持

此特性已相当成熟,可在许多设备和浏览器版本上使用。自 ⁨2015 年 7 月⁩以来,各浏览器均已提供此特性。

SVGLength 接口的 convertToSpecifiedUnits() 方法允许您将长度值转换为指定的单位类型。

此函数将

语法

js
convertToSpecifiedUnits(unitType)

参数

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:转换为点
  • SVGLength.SVG_LENGTHTYPE_PC:转换为派卡(picas)

返回值

无(undefined)。

示例

将长度转换为毫米

js
// Get an SVGLength object
const svg = document.querySelector("svg");
const length = svg.createSVGLength();

// Set a length value in centimeters
length.valueAsString = "0.5cm";

// Convert the length to millimeters
length.convertToSpecifiedUnits(SVGLength.SVG_LENGTHTYPE_MM);

console.log(length.unitType); // Output: 7 (SVG_LENGTHTYPE_MM)
console.log(length.valueInSpecifiedUnits); // Output: 5
console.log(length.valueAsString); // Output: "5mm"

规范

规范
Scalable Vector Graphics (SVG) 2
# __svg__SVGLength__convertToSpecifiedUnits

浏览器兼容性

另见