stroke属性 |
グラフィックの輪郭の線の太さと色を指定する。
stroke="色"
stroke属性を省略した場合は、輪郭を描画しない。
stroke-width="2" |
fill |
属性 塗りつぶしを指定する。
fill="色"
fill属性を省略した場合は通常は黒の塗りつぶしになる。fill="none" ※ 内部を塗りつぶさない 塗りつぶさない場合は明示的にnoneを指定する必要がある。 |
opacity属性 stroke-opacity属性 fill-opacity属性 |
グラフィック内部の不透明度を指定する。
opacity="不透明度"
最大値が完全な不透明を示すので透明度ではない。0.0 = 完全に透明 1.0 = 完全に不透明 線の不透明度はstroke-opacity、 塗りつぶしの不透明度はfill-opacity属性、 グラフィック全体の不透明度はopacity属性で指定する。 |
属性 | |
x y | 左上の座標 |
width height | 横・縦の長さ |
rx ry |
角を丸くするときの楕円の横・縦の半径 ry省略時はrxと同値。 |
<svg width="10cm" height="10cm" viewBox="0 0 100 100"
xmlns="http://www.w3.org/2000/svg"> <rect x="10" y="10" width="30" height="40"/> <rect x="30" y="30" width="30" height="40" stroke-width="2" stroke="blue" fill="none"/> <rect x="50" y="50" width="30" height="40" rx="5" ry="5" fill="lime" fill-opacity="0.7"/> </svg> |
<svg width="10cm" height="10cm" viewBox="0 0 100 100"
xmlns="http://www.w3.org/2000/svg"> <rect x="30" y="30" width="30" height="40" stroke-width="5" stroke="red" fill="none" opacity="0.5"/> <rect x="30" y="30" width="30" height="40" stroke-width="1" stroke="black" fill="none" opacity="1.0"/> </svg> |
属性 | |
cx cy | 円の中心座標 |
r | 半径 |
<svg width="10cm" height="10cm" viewBox="0 0 100 100"
xmlns="http://www.w3.org/2000/svg"> <circle cx="30" cy="35" r="20" stroke-width="4" stroke="brown" fill="none"/> <circle cx="60" cy="45" r="30" stroke-width="2" stroke="navy" fill="skyblue" opacity="0.5"/> </svg> |
属性 | |
cx cy | 円の中心座標 |
rx ry | x軸方向・y軸方向の半径 |
<svg width="10cm" height="10cm" viewBox="0 0 100 100"
xmlns="http://www.w3.org/2000/svg"> <ellipse cx="30" cy="40" rx="20" ry="30" stroke-width="4" stroke="purple" fill="none"/> <ellipse cx="60" cy="50" rx="35" ry="15" stroke-width="2" stroke="gray" fill="pink" opacity="0.5"/> </svg> |
属性 | |
x1 y1 | 始点座標 |
x2 y2 | 終点座標 |
<svg width="10cm" height="10cm" viewBox="0 0 100 100"
xmlns="http://www.w3.org/2000/svg"> <line x1="10" y1="50" x2="60" y2="10" stroke="red" stroke-width="1"/> <line x1="20" y1="30" x2="80" y2="70" stroke="blue" stroke-width="2"/> <line x1="40" y1="10" x2="40" y2="90" stroke="green" stroke-width="4" opacity="0.6"/> </svg> |
属性 | |
points |
折れ線の各頂点の座標のリストXnとYnのペアをカンマか空白で区切って並べる。 points="X1 Y1 X2 Y2 X3 Y3 ..." points="X1,Y1 X2,Y2 X3,Y3 ..." |
<svg width="10cm" height="10cm" viewBox="0 0 100 100"
xmlns="http://www.w3.org/2000/svg"> <polyline points="10,40 50,10 70,30 30,80 50,70 40,90 90,40" stroke-width="1" stroke="teal" fill="none"/> </svg> |
属性 | |
points |
多角形の各頂点の座標のリストXnとYnのペアをカンマか空白で区切って並べる。 points="X1 Y1 X2 Y2 X3 Y3 ..." points="X1,Y1 X2,Y2 X3,Y3 ..." 終点を始点と同じ座標にしなくても、最後から先頭の座標へ自動で閉じる。 |
<svg width="10cm" height="10cm" viewBox="0 0 100 100"
xmlns="http://www.w3.org/2000/svg"> <polygon points="10,40 20,10 80,30 30,80 20,60 30,30" stroke-width="2" stroke="red" fill="gold"/> </svg> |
<svg width="10cm" height="10cm" viewBox="0 0 100 100"
xmlns="http://www.w3.org/2000/svg"> <polygon points="10,40 20,10 80,30 30,80 20,60 70,10" stroke-width="2" stroke="red" fill="gold"/> </svg> |
属性値 | |
butt | 端点で断ち切る |
round | 端点を中心にした半円 |
square | 端点を中心にした四角 |
<svg width="10cm" height="10cm" viewBox="0 0 100 100"
xmlns="http://www.w3.org/2000/svg"> <line x1="20" y1="20" x2="70" y2="20" stroke="seagreen" stroke-width="8" stroke-linecap="butt"/> <line x1="20" y1="40" x2="70" y2="40" stroke="orange" stroke-width="8" stroke-linecap="round"/> <line x1="20" y1="60" x2="70" y2="60" stroke="magenta" stroke-width="8" stroke-linecap="square"/> </svg> |
属性値 | |
miter | とがった形 |
round | 丸 |
bevel | 角を削る(面取り) |
<svg width="10cm" height="10cm" viewBox="0 0 100 100"
xmlns="http://www.w3.org/2000/svg"> <polyline points="10,40 40,10 70,40" stroke-width="8" stroke="olive" fill="none" stroke-linejoin="miter"/> <polyline points="10,60 40,30 70,60" stroke-width="8" stroke="red" fill="none" stroke-linejoin="round"/> <polyline points="10,80 40,50 70,80" stroke-width="8" stroke="sienna" fill="none" stroke-linejoin="bevel"/> </svg> |
属性 | |
stroke-dasharray |
破線の線と空白の長さのパターンをカンマで区切って並べる。 stroke-dasharray="線, 空白, 線 ..." |
<svg width="10cm" height="10cm" viewBox="0 0 100 100"
xmlns="http://www.w3.org/2000/svg"> <line x1="0" y1="0" x2="100" y2="100" stroke="red" stroke-width="1" stroke-dasharray="2,3,4,5"/> <circle cx="50" cy="30" r="20" stroke="blue" stroke-width="1" stroke-dasharray="2,4" fill="none"/> </svg> |
属性 | |
d |
描画方法と座標を組み合わせたコマンドを指定する。 コマンドは1文字のアルファベットに続けて座標やパラメータを指定する。コマンドやパラメータはカンマか空白で区切って並べる(コマンド・パラメータ間はつなげてもよい)。座標はX、Yの順とする。 コマンドの大文字と小文字は座標指定方法で区別する。
大文字:絶対座標
小文字:相対座標 |
d属性コマンド | |
M(m) |
現在位置の移動 描画位置の座標を移動する。移動の軌跡は描画されない。 d="M 30,15 m 50,40" 最初の描画位置を決めるために、d属性の先頭は必ずMコマンドから開始する。 |
L(l) |
直線の描画 現在位置から 指定する座標へ直線を描画する。 d="M 30,15 l 40,0 l 0,40 l -40,0 l 0,-40" |
H(h) |
水平線の描画 現在位置のY座標を維持し、X座標まで直線を描画する。 d="M 30,15 H 80" |
V(v) |
垂直線の描画 現在位置のX座標を維持し、Y座標まで直線を描画する。 d="M 20,50 v -20" |
Z(z) |
直線で図形を閉じる 現在位置から開始点へ直線を描画して図形を閉じる。 Z(z)はパラメータを指定しない。また大文字と小文字に区別はない。 d="M 10,10 l 40,0 l 0,40 l -40,0 Z" |
Q(q) |
二次ベジェ曲線の描画 現在位置を起点とし、続く制御点によりカーブする曲線を描画し最後の制御点に到達する曲線を描画する。 制御点は2つ指定する。d="M 10,20 Q 40,0 60,20" |
C(c) |
三次ベジェ曲線の描画 現在位置を起点とし、続く2つの制御点によりカーブする曲線を描画し最後の制御点に到達する曲線を描画する。 制御点は3つ指定する。d="M 20,20 C 10,35 40,50 20,70" |
A(a) |
楕円弧の描画 現在位置を起点とし、指定する座標までを楕円弧で描画する。次の7つのパラメータを指定する。
① X軸方向の楕円弧の半径
d="M 30,50 a 35,30 0 0,0 60,20"
② Y軸方向の楕円弧の半径 ③ 楕円の x軸の回転角度 ④ 1なら長弧(large arc:180 度以上)、0なら短弧(small arc:180 度未満) ⑤ 1なら時計回り(clockwise)、0なら反時計回り(counterclockwise) ⑥ 楕円弧が終了するx座標 ⑦ 楕円弧が終了するy座標 |
<svg width="10cm" height="10cm" viewBox="0 0 100 100"
xmlns="http://www.w3.org/2000/svg"> <path d="M 30,15 l 40,0 l 0,40 l -40,0" stroke="black" fill="none"/> </svg> |
<svg width="10cm" height="10cm" viewBox="0 0 100 100"
xmlns="http://www.w3.org/2000/svg"> <path d="M 30,15 l 40,0 l 0,40 l -40,0 Z" stroke="black" fill="none"/> </svg> |
<svg width="10cm" height="10cm" viewBox="0 0 100 100"
xmlns="http://www.w3.org/2000/svg"> <path d="M 10,20 Q 40,0 60,20" stroke="red" fill="none"/> <path d="M 20,20 C 10,35 40,50 20,70" stroke="blue" fill="none"/> <path d="M 30,50 a 35,30 0 0,0 60,20" stroke="green" fill="none"/> </svg> |
属性 | |
x | テキストのx座標(デフォルトで先頭) |
y | テキストベースラインのy座標 |
font-size | フォントサイズ |
font-family |
フォントファミリ名 以下のジェネリックフォントファミリは環境に応じたフォントが選択される。 serif/sans-serif/cursive/fantasy/monospace |
font-weight |
フォントの太さ normal/bold |
font-style |
フォントスタイル normal/italic/oblique |
text-decoration |
テキスト装飾 none(なし=デフォルト) underline(下線) overline(上線) line-through(取り消し線) |
word-spacing | 単語の間隔(normalを指定すると標準間隔になる) |
letter-spacing | 文字の間隔(normalを指定すると標準間隔になる) |
text-anchor |
テキストの基準 start(先頭にあわせる) middle(中央にあわせる) end(終了にあわせる) |
baseline-shift |
垂直方向の移動 super(上付き) sub(下付き) パーセンテージ(負数の場合はベースライン下方向) emなど長さ(負数の場合はベースライン下方向) |
<svg width="10cm" height="10cm" viewBox="0 0 100 100"
xmlns="http://www.w3.org/2000/svg"> <text x="10" y="20" font-family="serif"> serif </text> <text x="10" y="40" font-family="monospace"> monospace </text> <text x="10" y="60" font-family="MS ゴシック"> MSゴシック </text> </svg> |
<svg width="10cm" height="10cm" viewBox="0 0 100 100"
xmlns="http://www.w3.org/2000/svg"> <text x="10" y="20" font-size="12pt" fill="forestgreen"> Size 12pt </text> <text x="10" y="60" font-size="20pt" stroke-width="0.5" stroke="lightgreen" fill="aquamarine"> Stroke </text> </svg> |
<svg width="10cm" height="10cm" viewBox="0 0 100 100"
xmlns="http://www.w3.org/2000/svg"> <text x="10" y="20" font-weight="bold"> bold </text> <text x="10" y="40" font-style="italic"> italic </text> <text x="10" y="60" font-weight="bold" font-style="italic"> bold italic </text> <text x="10" y="80" text-decoration="underline"> underline </text> </svg> |
<svg width="10cm" height="10cm" viewBox="0 0 100 100"
xmlns="http://www.w3.org/2000/svg"> <text x="10" y="20" word-spacing="6">I am dog</text> <text x="10" y="40" word-spacing="-2">I am dog</text> <text x="10" y="60" letter-spacing="2">I am dog</text> <text x="10" y="80" letter-spacing="-1">I am dog</text> </svg> |
<svg width="10cm" height="10cm" viewBox="0 0 100 100"
xmlns="http://www.w3.org/2000/svg"> <g fill="mediumblue" font-size="12pt"> <text x="50" y="20" text-anchor="start">start</text> <text x="50" y="40" text-anchor="middle">middle</text> <text x="50" y="60" text-anchor="end">end</text> </g> </svg> |
<svg width="10cm" height="10cm" viewBox="0 0 100 100"
xmlns="http://www.w3.org/2000/svg"> <g fill="navy" font-size="8pt"> <text x="10" y="20"> I am <tspan font-size="12pt">not</tspan> a cat. </text> <text x="10" y="30"> I am <tspan font-family="fantasy">not</tspan> a cat. </text> <text x="10" y="40"> I am <tspan font-weight="bold">not</tspan> a cat. </text> <text x="10" y="60"> I am <tspan text-decoration="underline">not</tspan> a cat. </text> </g> </svg> |
<svg width="10cm" height="10cm" viewBox="0 0 100 100"
xmlns="http://www.w3.org/2000/svg"> <text x="10" y="40">X <tspan font-size="8pt" baseline-shift="super">1</tspan> <tspan font-size="8pt" baseline-shift="1em">2</tspan> <tspan font-size="8pt" baseline-shift="50%">3</tspan> <tspan font-size="8pt" baseline-shift="-50%">4</tspan> <tspan font-size="8pt" baseline-shift="-1em">5</tspan> <tspan font-size="8pt" baseline-shift="sub">6</tspan> </text> </svg> |
属性 | |
xlink:href |
テキストを配置するガイドとなるパスのid名を指定する。 名前空間「xmlns:xlink="http://www.w3.org/1999/xlink"」の宣言が必要。 |
<svg width="10cm" height="10cm" viewBox="0 0 100 100"
xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"> <path id="path1" d="M30,55 a35,23 0 1,1 40,0" fill="none"/> <text font-size="9" font-family="serif" fill="cadetblue"> <textPath xlink:href="#path1"> I am a cat. I am not a cat. </textPath> </text> </svg> |
path要素をdefs要素の中に入れると、パスが描画目的ではないガイドラインの定義であることをより明確にできます。
<defs>
<path id="path1" d="M30,55 a35,23 0 1,1 40,0" fill="none"/> </defs> |
属性 | |
id | グループの名称 |
<?xml version="1.0"?>
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http:/awww.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"> <svg width="10cm" height="10cm" viewBox="0 0 100 100" xmlns="http://www.w3.org/2000/svg"> <g id="square" stroke-width="2" stroke="blueviolet" fill="lime"> <rect x="10" y="10" width="60" height="60"/> <rect x="20" y="20" width="40" height="40"/> <rect x="30" y="30" width="20" height="20" fill="yellow"/> </g> </svg> |
属性 | |
xlink:href |
参照するグループのid名 グループ名の前に「#」を付ける。 名前空間「xmlns:xlink="http://www.w3.org/1999/xlink"」の宣言が必要。 |
<svg width="10cm" height="10cm" viewBox="0 0 100 100"
xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"> <g id="square" stroke-width="2" stroke="blueviolet" fill="lime"> <rect x="5" y="5" width="40" height="40"/> <rect x="15" y="15" width="20" height="20" fill="yellow"/> </g> <use xlink:href="#square" x="30" y="30"/> </svg> |
属性 | |
id | グループの名称 |
<svg width="10cm" height="10cm" viewBox="0 0 100 100"
xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"> <symbol id="square" stroke-width="2" stroke="blueviolet"> <rect x="10" y="10" width="60" height="60"/> <rect x="20" y="20" width="40" height="40"/> <rect x="30" y="30" width="20" height="20"/> </symbol> <use xlink:href="#square" x="30" y="30"/> </svg> |
属性 | |
id | グループの名称 |
<svg width="10cm" height="10cm" viewBox="0 0 100 100"
xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"> <defs> <g id="square" stroke-width="2" stroke="blueviolet" fill="lime"> <rect x="5" y="5" width="40" height="40"/> <rect x="15" y="15" width="20" height="20" fill="yellow"/> </g> </defs> <use xlink:href="#square" x="30" y="30"/> </svg> |
属性 | |
xlink:href |
参照するグループのid名。 名前空間「xmlns:xlink="http://www.w3.org/1999/xlink"」の宣言が必要。 |
<svg width="10cm" height="10cm" viewBox="0 0 100 100"
xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"> <a xlink:href="http://www.yahoo.co.jp/"> <rect x="20" y="40" width="60" height="20" fill="hotpink"/> </a> </svg> |
属性 | |
id | クリッピングパスの名称 |
クリッピングパス適用属性 | |
clip-path |
クリッピングパスを指定する。 clip-path="url(#クリッピングパスの名称)" |
<svg width="10cm" height="10cm" viewBox="0 0 100 100"
xmlns="http://www.w3.org/2000/svg"> <clipPath id="ellipseclip"> <ellipse cx="50" cy="35" rx="45" ry="30"/> </clipPath> <g clip-path="url(#ellipseclip)"> <circle cx="0" cy="100" r="80" fill="lavender"/> <circle cx="120" cy="0" r="70" fill="yellow"/> <circle cx="80" cy="60" r="20" fill="crimson"/> </g> </svg> |
属性 | |
xlink:href |
画像ファイルのURIを指定する。 名前空間「xmlns:xlink="http://www.w3.org/1999/xlink"」の宣言が必要。 |
x y | 領域の左上の点の座標 |
width height | 領域の幅と高さ |
<svg width="10cm" height="10cm" viewBox="0 0 100 100"
xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"> <image xlink:href="imagekyoto.jpg" x="10" y="10" width="50" height="40"/> <image xlink:href="headphone.svg" x="30" y="40" width="60" height="40"/> </svg> |