NEW無料SVGからReactへ変換ツール

SVG to React

生のSVGコードを貼り付けると、本番対応のReactコンポーネントが数ミリ秒で生成されます。SVGからReactへの変換はすべてブラウザ内で実行 — アップロード不要、バックエンド不要、ゼロ遅延。

ReactのためにSVGを手動編集すると時間が無駄になる理由

生のSVGをReactプロジェクトに組み込もうとしたことのある開発者なら、これらの問題を身をもって知っているはずです。

camelCase エラーがビルドを壊す

生のSVGはclip-rule、fill-opacity、stroke-linecapのようなハイフン付き属性を使用します。ReactはcamelCase(clipRule、fillOpacity、strokeLinecap)を期待します。一つ欠けるだけで実行時エラーまたは気づきにくいスタイルバグが発生します。

ハードコードされた色が再利用性を損なう

FigmaやSketchはfill="#3B82F6"が埋め込まれたSVGをエクスポートします。すべてのアイコンが使い回しのきかないものになります。同じSVGをダークテーマやホバー状態、別のブランドカラーで使うには複製して再編集が必要です。

肥大化したエクスポートコードがパフォーマンスを低下させる

デザインツールはエクスポートするSVGに<title>、<defs>、空の<g>グループ、冗長な属性を詰め込みます。この不要なコードはJSXバンドルを膨らませ、解析時間を遅くします。

SVGからReactへ変換ツール

左にSVGを貼り付けると、右にReactコンポーネントが表示されます

変換オプション

このSVGからReact変換ツールができること

6つの本番レベルの変換が瞬時に、すべてブラウザ内で適用されます。

リアルタイムSVGからReact変換

SVGを貼り付けた瞬間にReactコンポーネントが表示されます。SVGからReact変換はブラウザ内AST変換として実行 — ネットワーク往復ゼロ、ファイルサイズに関係なくゼロ遅延。

TypeScriptインターフェース自動生成

TSXモードをオンにすると、コンバータが自動的にinterface IconProps extends React.SVGProps<SVGSVGElement>を先頭に追加します。すべてのpropが型付き。

SVGO圧縮内蔵

SVGからReact変換の前に、FigmaやSketchがエクスポートした<title>、<defs>、空のグループ、冗長な属性を除去します。パスが統合・簡略化され、出力サイズが最大60%削減されます。

Tailwind CSSクラス注入

Tailwindモードを有効にすると、SVGからReact変換ツールがハードコードされたfillとstrokeの色をclassName="fill-current"とcurrentColorに置き換えます。アイコンが親のテキスト色を即座に継承します。

camelCase属性変換

ハイフン付きSVG属性すべて(clip-rule、fill-opacity、stroke-linecap、xlink:href)が自動的にReact camelCase相当に変換されます。classはclassNameになります。常に有効なJSXが出力されます。

レスポンシブサイズ削除

1回のトグルでSVGルート要素からハードコードされたwidthとheightを削除します。SVGからReact変換されたコンポーネントがCSSやclassName propでサイズを自己調整し、完全にレスポンシブになります。

3ステップでSVGをReactに変換する方法

生のSVGエクスポートから30秒以内にコピー&ペースト可能なReactコンポーネントへ。

01

ステップ1 — 生のSVGを貼り付ける

Figma、Sketch、アイコンライブラリ、またはSVGファイルからSVGソースをコピーします。SVGからReact変換ツールの左パネルに直接貼り付けます。マルチパスアイコンや複雑なイラストを含む有効なSVGをすべて受け付けます。

  • Figma、Sketch、Illustrator、オープンソースアイコンセットからのSVGエクスポートをサポート
  • ルート要素を含む完全な<svg>...</svg>ブロックを貼り付けてください
  • 複数の<path>要素がSVGからReactの1パスで完全にサポートされています
02

ステップ2 — 変換オプションを選択する

プロジェクトに合った出力形式と最適化を選択します。TypeScriptをオンにすると型付きpropsのTSX出力になります。SVGO圧縮でFigmaの不要コードをSVGからReact変換前に除去します。TailwindをオンにするとcurrentColorでハードコードされた色が置き換えられます。

💡 Pro Tip:デザインシステムには4つ全てのオプションを有効にしてください:TypeScript + SVGO + Tailwind + サイズ削除。Next.jsまたはViteプロジェクトにすぐに使えるゼロコンフィグ、テーマ対応、型付きSVGからReactアイコンコンポーネントが得られます。
03

ステップ3 — Reactコンポーネントをコピーする

入力と同時に右パネルにSVGからReact変換出力が表示されます。「コピー」をクリックしてReactコンポーネントをクリップボードに送り、.jsxまたは.tsxファイルに直接貼り付けます。再フォーマット不要。

  • コンポーネント名はファイルコンテキストから推測されます — 命名規則に合わせて変更してください
  • JSX出力はReact v16以降のすべてのバージョンで動作します
  • TSX出力にはTypeScript 4.1+と@types/reactが必要です

3つのSVGからReachワークフロー、1つのツール

デザインシステム構築、バンドルサイズ最適化、完成されたアイコンの引き渡し — SVGからReact変換ツールがあなたのワークフローをカバーします。

瞬時のSVGからReact変換 — ライブデュアルパネルプレビュー

生SVGを左に貼り付けると、Reactコンポーネントがリアルタイムで右に表示されます。SVGからReact変換はブラウザ内の純粋なASTパスとして実行 — 待機なし、サーバーなし、レート制限なし。

SVG to React live dual-panel preview — raw SVG input on the left, formatted React component output on the right

TypeScriptファーストSVGからReact出力

1回のトグルでSVGからReact出力がJSXからTSXに切り替わり、interface IconProps extends React.SVGProps<SVGSVGElement>が自動生成されます。すべてのCSSクラス、ariaラベル、イベントハンドラが完全に型付けされます。

SVG to React TypeScript output showing auto-generated IconProps interface and TSX toggle controls

SVGO + Tailwind:最適化されたSVGからReact変換

コンバータはSVGからReact変換の前にSVGO圧縮を実行 — Figmaメタデータを除去し、冗長なパスをマージし、ファイルサイズを最大60%削減します。Tailwindモードがfillのハードコードされた色をcurrentColorに置き換えます。

SVG to React SVGO compression before-after comparison with Tailwind currentColor injection

SVGからReact変換 — よくある質問

SVGをReactコンポーネントに変換すること、TypeScript props、SVG最適化に関するよくある質問。

SVGからReac変換とはどういう意味ですか?

SVGからReact変換とは、Figma、Sketch、またはアイコンライブラリからエクスポートされた生のSVGファイルを取得し、再利用可能なReact関数コンポーネントに変換することです。SVGマークアップがJSXになり、ハイフン付き属性がcamelCaseになり、コンポーネントがclassName、width、aria-labelなどのpropsを受け取れるようになります。

<img>タグの代わりにSVGをReactに変換する必要があるのはなぜですか?

SVGをReactコンポーネントとしてインラインにすると、CSSでfillとstrokeを制御し、Framer Motionで個々のパスをアニメーションし、アクセシビリティのためのARIAラベルを適用し、ビルド時に未使用アイコンをツリーシェイクできます。<img>タグはSVGを不透明な画像として扱います。

このSVGからReact変換ツールはTypeScriptをサポートしますか?

はい。TypeScriptスイッチをオンにすると、SVGからReact出力が.jsx形式から.tsx形式に切り替わります。コンバータがファイルの先頭にinterface IconProps extends React.SVGProps<SVGSVGElement>を自動生成し、すべてのpropに完全な型カバレッジを提供します。

コンバータはどのSVG属性をReact用にリネームしますか?

SVGからReact変換ツールは既知のすべてのハイフン付き属性を処理します:clip-rule → clipRule、fill-opacity → fillOpacity、stroke-linecap → strokeLinecap、stroke-linejoin → strokeLinejoin、stroke-width → strokeWidth、xlink:href → href、class → className。出力は常に有効なJSXです。

SVGO圧縮はどのように機能しますか?

SVGからReact変換の前に、ツールはブラウザ内でJavaScriptのSVGOパスを実行します。デザインツールが生成した<title>、<desc>、<defs>、空の<g>要素、冗長なプレゼンテーション属性を除去します。

Tailwind CSSオプションは何をしますか?

Tailwindモードが有効な場合、SVGからReact変換ツールはハードコードされたfill="#hex"とstroke="#hex"属性をfill="currentColor"とstroke="currentColor"に置き換え、ルート<svg>要素にclassName="fill-current"を追加します。アイコンが親要素のtext-colorクラスを継承します。

SVGコードはサーバーに送信されますか?

いいえ。SVGからReactへの変換全体がブラウザのJavaScriptエンジン内で行われます。SVGソースコードはデバイスから出ません。バックエンドなし、アップロードなし、ログなし、レート制限なし。

大きくて複雑なSVGイラストを変換できますか?

はい。非常に大きなSVG(数百のパス)は処理に少し時間がかかることがあります。SVGからReact変換ツールはマルチパスアイコン、クリップパス、グラデーション、マスク、ネストされたグループを処理します。

今すぐSVGからReactへの変換を始めよう

無料、即時、すべてブラウザ内で実行。アカウント不要。

100%無料 · 登録不要 · アップロード不要 · オフライン動作