VSCodeでは、SVGファイルを画像としてプレビューできます。
SVGはXMLベースのテキストデータで構成されているため、VSCode上でソースコードを直接編集しながら、完成した画像を確認できるのが特徴です。
SVGを確認する方法としては、VSCodeの標準機能を利用する方法と、SVGプレビュー用の拡張機能を利用する方法があります。
単純にSVGの表示結果を確認したい場合は標準機能で十分ですが、コードを編集しながらリアルタイムで確認したい場合は拡張機能を利用すると便利です。
VSCodeの標準機能でSVGをプレビューする
SVGはVSCode標準機能で表示できる
比較的新しいVSCodeでは、標準の画像プレビュー機能がSVG形式に対応しています。
そのため、SVGの完成形を確認するだけであれば、必ずしも拡張機能をインストールする必要はありません。
例えば、次のようなファイル構成があるとします。
project/
├─ index.html
└─ logo.svg
VSCodeのエクスプローラーからlogo.svgを開くと、設定やファイルの関連付けに応じて、画像プレビューまたはテキストエディターで表示されます。
SVGがコードとして表示される場合
SVGは画像ファイルであると同時に、XML形式のテキストファイルでもあります。
そのため、環境によっては次のようなコードとして表示されます。
<svg
xmlns="http://www.w3.org/2000/svg"
width="200"
height="200"
viewBox="0 0 200 200"
>
<circle
cx="100"
cy="100"
r="80"
fill="blue"
/>
</svg>
これは異常ではありません。
SVGを編集する場合は、むしろテキストとして表示したほうが便利です。
「Reopen Editor With」で表示方法を切り替える
SVGを画像として確認したい場合は、エディターの表示方法を切り替えられます。
SVGファイルのタブを右クリックし、
Reopen Editor With...
を選択します。
その後、利用可能なエディターの中から画像プレビューに相当するものを選択します。
これにより、
SVGコードを編集
↓
画像としてプレビュー
といった使い分けができます。
なお、メニュー名や表示内容はVSCodeのバージョンや表示言語によって多少異なる場合があります。
SVGをコードとして編集する
SVGはXMLコードを直接編集できる
SVGの大きなメリットは、画像をコードとして編集できることです。
例えば、次のSVGでは青い円を表示しています。
<svg
xmlns="http://www.w3.org/2000/svg"
width="200"
height="200"
viewBox="0 0 200 200"
>
<circle
cx="100"
cy="100"
r="80"
fill="#0066ff"
/>
</svg>
fill属性を変更すると、図形の色を変更できます。
例えば次のようにします。
fill="#ff0000"
すると、円の色が赤色になります。
SVGでよく編集する属性
SVGでは、次のような属性を頻繁に編集します。
width
height
viewBox
fill
stroke
stroke-width
x
y
cx
cy
r
d
例えば、長方形を表示する場合は次のように記述できます。
<rect
x="20"
y="20"
width="160"
height="100"
fill="green"
/>
このように、VSCodeではSVGの形状や色、サイズなどをコードから細かく調整できます。
SVGを編集しながらプレビューする
標準プレビューは確認用途に向いている
VSCode標準のSVGプレビューは、完成したSVGを確認する用途には便利です。
一方で、SVGコードを頻繁に修正する場合、
コードを編集
↓
プレビューを開く
↓
コードに戻る
↓
再び修正
という操作が増えることがあります。
このような場合は、SVG専用のプレビュー拡張機能を利用すると効率的です。
Svg Preview拡張機能を利用する
Svg Previewとは
「Svg Preview」は、VSCode上でSVGをライブプレビューできる拡張機能です。
SVGコードを編集しながら、別のペインにレンダリング結果を表示できます。
そのため、
左側:SVGコード
右側:SVGプレビュー
といったレイアウトで作業できます。
SVGアイコンやロゴなどを頻繁に編集する場合に便利です。
Svg Previewをインストールする
VSCode左側のExtensionsビューを開きます。
Windows・Linuxでは、
Ctrl + Shift + X
macOSでは、
Cmd + Shift + X
で開くこともできます。
検索欄に、
Svg Preview
と入力して対象の拡張機能を検索し、インストールします。
SVGプレビューを横に表示する
Svg Previewでは、
Svg Preview: Open Preview to the Side
というコマンドを利用できます。
デフォルトでは、
Ctrl + Alt + P
がショートカットとして設定されています。
実行すると、例えば次のようなレイアウトになります。
┌────────────────────┬────────────────────┐
│ SVGコード │ SVGプレビュー │
│ │ │
│ <svg> │ ● │
│ <circle ... /> │ │
│ </svg> │ │
└────────────────────┴────────────────────┘
SVGコードを変更しながら結果を確認できるため、編集作業の効率を高められます。
Svg Previewを自動的に開く
svgPreview.autoOpenを設定する
Svg Previewには、SVGファイルを開いたときに自動でプレビューを表示する設定があります。
設定名は、
svgPreview.autoOpen
です。
settings.jsonでは、次のように設定できます。
{
"svgPreview.autoOpen": true
}
SVGを頻繁に編集する場合は、自動プレビューを有効にしておくと便利です。
SVGの表示サイズを調整する
svgPreview.scaleToFitを利用する
プレビュー画面にSVG全体を収めたい場合は、
svgPreview.scaleToFit
を利用できます。
例えば次のように設定します。
{
"svgPreview.scaleToFit": true
}
有効にすると、大きなSVGでもプレビュー領域に合わせて表示しやすくなります。
SVGの背景色を変更する
白いSVGや透明SVGを確認しやすくする
SVGには、透明背景や白色の図形が使用されることがあります。
例えば、
fill="#ffffff"
のような白色SVGを白背景で表示すると、画像が見えにくくなります。
Svg Previewでは、svgPreview.styleを利用して背景を変更できます。
例えば、背景を白色にする場合は次のように設定できます。
{
"svgPreview.style": {
"html": {
"background": "white"
}
}
}
透明部分を確認したい場合は、背景色を変更したり、チェッカーボード形式の背景を設定したりすると確認しやすくなります。
HTML内のSVGを確認する
インラインSVGを利用する場合
SVGは.svgファイルとして保存するだけでなく、HTML内に直接記述できます。
例えば次のように記述します。
<!DOCTYPE html>
<html lang="ja">
<head>
<meta charset="UTF-8">
<title>SVG Sample</title>
</head>
<body>
<svg
width="200"
height="200"
viewBox="0 0 200 200"
>
<circle
cx="100"
cy="100"
r="80"
fill="blue"
/>
</svg>
</body>
</html>
このような書き方は「インラインSVG」と呼ばれます。
インラインSVGの場合は、ブラウザでHTML全体を表示して確認する方法も便利です。
SVGをホバーでプレビューする
SVG Preview on codeを利用する
コード上のSVGを簡単に確認したい場合は、ホバープレビューに対応した拡張機能を利用できます。
例えば「SVG Preview on code」では、SVGコードにマウスカーソルを合わせることでプレビューを表示できます。
<svg viewBox="0 0 24 24">
<path d="..." />
</svg>
このようなSVGがHTML内に多数記述されている場合でも、必要なSVGだけを素早く確認できます。
SVGアイコンを大量に扱うWeb制作では便利な方法です。
ReactやVue内のSVGをプレビューする
JSXやTSX内のSVGは専用拡張機能が便利
Reactでは、SVGをコンポーネントとして直接記述することがあります。
例えば次のようなコードです。
export default function Icon() {
return (
<svg
width="24"
height="24"
viewBox="0 0 24 24"
>
<circle
cx="12"
cy="12"
r="10"
fill="blue"
/>
</svg>
);
}
この場合、通常の.svgファイル用プレビューだけでは扱いにくいことがあります。
.jsxや.tsx、.vue内のSVGを確認したい場合は、これらのファイル形式に対応したSVGプレビュー拡張機能を利用すると便利です。
ブラウザでSVGをプレビューする
SVGファイルを直接ブラウザで開く
SVGは主要なWebブラウザで直接表示できます。
そのため、
logo.svg
などのSVGファイルをChromeやEdge、Firefoxにドラッグ&ドロップするだけでも表示できます。
VSCodeの表示結果だけでなく、実際のブラウザでどのようにレンダリングされるか確認したい場合に便利です。
HTMLからSVGを読み込む
Webページ内でSVGを使用する場合は、img要素から読み込む方法も一般的です。
<img src="./icon.svg" alt="アイコン">
例えば、
project/
├─ index.html
└─ icon.svg
という構成であれば、index.htmlをブラウザで開くことでSVGの表示を確認できます。
Live Serverと組み合わせる
Webページ全体での表示確認に向いている
SVG単体ではなく、Webサイト上でどのように表示されるか確認したい場合は、Live Serverなどを利用する方法があります。
例えば、
<img
src="./images/logo.svg"
alt="ロゴ"
width="200"
>
と記述している場合、ブラウザでWebページを表示すると、CSSや背景色も含めた状態で確認できます。
特に、
- CSSとの組み合わせ
- レスポンシブ表示
- 背景色との相性
- ホバーエフェクト
- SVGアニメーション
- JavaScriptによる制御
などを確認したい場合は、SVG単体のプレビューよりもブラウザで確認するほうが適しています。
SVGがプレビューできない場合の対処法
XML構文を確認する
SVGのタグ構造に問題があると、正しく表示されない場合があります。
例えば次のコードは不完全です。
<svg>
<circle>
</svg>
circle要素を正しく記述すると、例えば次のようになります。
<svg>
<circle cx="50" cy="50" r="40" />
</svg>
SVGが表示されない場合は、タグの閉じ忘れや属性値の記述ミスを確認しましょう。
xmlnsを確認する
独立した.svgファイルとして使用する場合は、SVGの名前空間を指定しておくのが基本です。
<svg
xmlns="http://www.w3.org/2000/svg"
viewBox="0 0 100 100"
>
一方、HTML内に直接記述するインラインSVGでは、xmlnsを省略しても利用できる場合があります。
そのため、xmlnsがないことだけを原因として判断するのではなく、SVGの利用方法に応じて確認することが大切です。
viewBoxを確認する
SVG内に図形が存在していても、viewBoxの範囲外に配置されていると表示されません。
例えば、
<svg viewBox="0 0 100 100">
<circle
cx="1000"
cy="1000"
r="50"
/>
</svg>
では、円が表示範囲から大きく外れています。
表示されない場合は、
viewBox
width
height
x
y
cx
cy
などの値を確認しましょう。
fillやstrokeを確認する
SVGが存在しているにもかかわらず見えない場合は、色の設定も確認します。
例えば、
fill="#ffffff"
となっているSVGを白い背景で表示すると、図形が見えません。
また、
fill="none"
になっていたり、
opacity="0"
が設定されていたりする場合もあります。
fillだけでなく、strokeやopacityなども確認すると原因を特定しやすくなります。
VSCodeでSVGを扱うおすすめの方法
確認だけなら標準プレビューで十分
SVGの完成形を確認するだけであれば、VSCode標準のSVGプレビューが便利です。
拡張機能を追加する必要がないため、シンプルに利用できます。
編集するならコードとプレビューを横並びにする
SVGを頻繁に編集する場合は、
左側:SVGコード
右側:ライブプレビュー
というレイアウトがおすすめです。
コードを変更した結果をすぐに確認できるため、色やサイズ、パスなどの微調整がしやすくなります。
Web制作ではブラウザ確認も行う
Webサイトで使用するSVGの場合は、VSCode内のプレビューだけで確認を完了させないことも重要です。
実際のブラウザでは、CSSやJavaScript、レスポンシブデザインなどの影響を受けます。
そのため、
VSCodeでSVG単体を確認
↓
ブラウザでページ全体を確認
という流れでチェックすると、表示トラブルを防ぎやすくなります。
まとめ
VSCodeでは、標準機能を使ってSVGファイルを画像としてプレビューできます。
SVGの完成形を確認するだけであれば、標準の画像プレビューで十分です。
一方、SVGコードを編集しながらリアルタイムで表示結果を確認したい場合は、「Svg Preview」などの拡張機能を利用すると効率的です。
また、HTMLやReact、Vueなどに埋め込まれたSVGについては、ホバープレビューやJSX・TSX・Vue対応の拡張機能を利用すると扱いやすくなります。
Webサイトで実際に使用するSVGについては、最終的にブラウザでも表示を確認することが重要です。
用途に応じて、
標準プレビュー
SVGプレビュー拡張機能
ブラウザ
を使い分けると、VSCodeでSVGを効率よく編集・確認できます。
以上、VSCodeでSVGファイルをプレビューする方法についてでした。
最後までお読みいただき、ありがとうございました。










