私はSVG Tiny 1.1を実装していますが、私は「ユーザユニット」の概念を理解することができません。SVG 1.1:「ユーザユニット」とは何ですか?ユーザユニットを絶対単位(例:ミリメートル)に変換する方法は?
SVG 1.1仕様では、指定された単位( "mm"、 "cm"、 "pt"など)を指定しないで<の長さがすべて>と定義されています。
インターフェイス「SVGLength」を実装しているときに、長さの値に関連する4つの属性があります。 value
,unityType
,valueInSpecifiedUnit
,valueAsString
。最後の3つの属性は私にとっては十分明確です。
valueInSpecifiedUnit
は、ユニットタイプunitType
です。valueAsString
は、valueInSpecifiedUnit
+unitType
の文字列値と同じです。たとえば、「10mm」
ただし、属性の値はユーザー単位であると言われています。だから私の質問は:
- 「ユーザユニット」とは何ですか?
- "ユーザー単位"から "絶対単位"(ミリメートル(mm)など)に変換する方法はありますか?
よろしく、
"user unit"は、最も外側のsvg要素の幅と高さの属性で定義されています。 例:
そして、ピクセルとmmの間に暗黙の変換がありますか? SVG文書で使用されているDPIの一部が表示されていますか?たとえ私たちがベクトルを話しているとしても、 "解決策"は話す。 – Ideogram
@DavidAndreolettiいいえ、ユーザーユニットは常に1つの 'px'に等しくなります。仕様通り:「1つのpx単位は1つのユーザー単位に等しいと定義されています。他の単位は 'px'のサイズに対して相対的にスケーリングされます。すなわち、' 1mm'は常に '3.543307px'に等しく、ちょうど' 3.543307'に等しくなります。 – Feuermurmel