SVGLength: newValueSpecifiedUnits() メソッド
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.
newValueSpecifiedUnits()
は SVGLength
インターフェイスのメソッドで、関連付けられた 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
: ポイントに変換SVGLength.SVG_LENGTHTYPE_PC
: パイカに変換
valueInSpecifiedUnits
-
長さの数値係数を、浮動小数点数として指定します。
返値
なし (undefined
)。
例外
このメソッドは、次のいずれかの型の DOMException
を発生させる可能性があります。
NotSupportedError
DOMException
-
unitType
がSVG_LENGTHTYPE_UNKNOWN
であるか、有効な単位型定数でない場合に発生します。 NoModificationAllowedError
DOMException
-
SVGLength
が読み取り専用の属性に関連付けられている場合、またはオブジェクト自体が読み取り専用である場合に発生します。
例
特定の単位の長さの値を設定
js
// SVGLength オブジェクトを取得
const svg = document.querySelector("svg");
const length = svg.createSVGLength();
// 指定した単位での新しい値を設定
length.newValueSpecifiedUnits(SVGLength.SVG_LENGTHTYPE_NUMBER, 45);
console.log(length.valueInSpecifiedUnits); // 出力: 45
console.log(length.unitType); // 出力: 1 (SVG_LENGTHTYPE_NUMBER)
console.log(length.value); // ユーザー座標系に変換された値
// 値をピクセル単位に変換
length.newValueSpecifiedUnits(SVGLength.SVG_LENGTHTYPE_PX, 100);
console.log(length.valueInSpecifiedUnits); // 出力: 100
console.log(length.unitType); // 出力: 5 (SVG_LENGTHTYPE_PX)
仕様書
Specification |
---|
Scalable Vector Graphics (SVG) 2 # __svg__SVGLength__newValueSpecifiedUnits |