externalResourcesRequired

Scalable Vector Graphics等,不定期

SVG文書内へのリンク

2006-11-20 | 仕様
fragment identifierを利用することで、SVG文書の特定の部分を表示することを指定することができます。

表示する部分を指定することで、例えば、初期表示を変えることができます。

SVGのfragment identifierには、対象とする要素をIDによって指定する場合と、SVG view specification(SVGビュー仕様)の場合があります。

対象とする要素をIDによって指定する場合は、SVG文書のIRIに続けて"#"と対象のIDを記述します。

例えば、
sample.svg#elem00
のように書けば、sample.svg中のIDがelem00である要素の中心がビューポートの中心に一致するように表示されます。elem00が<rect xml:id="elem00" width="200" height="100"/>で記述される矩形の場合、矩形の中心((100,50)の位置)がビューポートの中心になります。回転角は保たれます。
指定された要素の領域がビューポートよりも大きかった場合は、svg要素のzoomAndPan属性によって拡大縮小が制限されていなければ、指定された要素の全体が表示されるように縮小されます。
指定された要素が存在しない場合は、fragment identifierが指定されなかった場合と同じように扱われます。

SVG view specificationの場合は、SVG文書のIRIに続けて"#"と"svgView("、")"に囲まれた変換のリストを記述します。

例えば、
sample.svg#svgView(transform(scale(2)))
のように書けば、sample.svgにtransform(scale(2))という変換を適用した領域が表示されます。すなわち、svg要素のviewBox属性等によって決まる初期表示から2倍に拡大した状態で表示されます。
fragment identifierには半角スペースを用いることはできないので、SVG view specification中の数値の間はカンマ(",")で区切ります。

fragment identifierが指定されない場合は、初期表示はSVG文書のsvg要素のviewBox属性等によって決まります。

例えば、
sample.svg
のように書けば、sample.svgのsvg要素のviewBox属性の値が"0 0 100 100"の場合、左上の頂点が(0,0)、幅100、高さ100の矩形領域が表示されます。