SVG(Scalable Vector Graphics)

XML ベースのベクター画像規格。HTML に直接埋め込めて、CSS / JS で操作できる。 アイコン / ロゴ / グラフ / アニメーションまで、Web で最も柔軟な「画像」。

SVG の特徴

SVG vs 他のフォーマット

SVGCanvasWebGLPNG/JPG
ベクター×××
DOM 操作×××
大量描画△(要素数で重い)◎◎
アクセシビリティ××alt のみ
テキスト編集×××

要素数が1000 以下なら SVG が最も扱いやすい。それ以上は Canvas 推奨。

用途

最小サンプル

<svg width="200" height="100" viewBox="0 0 200 100" xmlns="http://www.w3.org/2000/svg">
  <rect x="10" y="10" width="180" height="80" fill="orange" rx="8" />
  <circle cx="100" cy="50" r="30" fill="white" />
  <text x="100" y="55" text-anchor="middle">Hello</text>
</svg>

ファイルとして / インラインとして

このセクションの読み方

  1. 構造と座標系 — viewBox / preserveAspectRatio
  2. 基本図形 — rect / circle / line / polygon
  3. path 完全解説 — M L H V C S Q T A Z
  4. 塗り・線・グラデ・フィルタ
  5. 座標変換 — translate / rotate / scale
  6. テキスト — text / tspan / textPath
  7. アニメーション — SMIL / CSS / JS
  8. 最適化と注意点

主要なツール

2026 年時点のスナップショット

SVG を学ぶ意義

ベクターのまま解像度・色・サイズを動的に変えられるのは Web 上で SVG だけ。 UI 表現の幅が一気に広がる。アイコンを <img> で置くだけだったところから、 色変えやアニメ、生成的なグラフィックまで対応できるようになる。