SVGオプティマイザー(SVGO)
ブラウザ内でSVGOを使ってSVGコードを最適化・最小化。エディタのメタデータ、コメント、冗長なマークアップを削除し、プレビューと削減サイズを表示します。
SVGO の既定プリセットを使用し、viewBox、タイトル、アクセシビリティ用の説明は保持します。
すべてブラウザ内で実行されます。データがアップロードされることはありません。
SVGオプティマイザーとは?
SVGオプティマイザーは、標準的なSVG最適化ライブラリのSVGOをSVGコードに適用します。エディタのメタデータ、コメント、非表示や空の要素を取り除き、パスデータ、数値、色を短縮し、統合できるものを統合します。最適化されたコード、処理前後のプレビュー、サイズの削減量が得られます。
SVGオプティマイザーの使い方
- SVG コードにSVGコードを貼り付けるか、
.svgファイルをドロップ/選択します。 - オプションを調整します:複数パス、数値の精度、ID を保持、width/height を viewBox に置き換える、出力を整形。
- 処理前後のプレビューとサイズのバッジを比較します。
- 最適化されたSVGをコピーするか、
name-min.svgとしてダウンロードします。
例
100×100 SVG from an editor with an XML declaration, a comment, <metadata>, empty <defs> and a nested <g> around a rect (474 bytes)
<svg xmlns="http://www.w3.org/2000/svg" width="100" height="100" viewBox="0 0 100 100"><path d="M10 10h80v80H10z" style="fill:red;stroke:none"/></svg>
SVGオプティマイザーを使うべき場面
Figma、Illustrator、Inkscape、Sketchから書き出したアイコン、ロゴ、イラストを、Webサイトやアプリに載せる前に使います。CSS、JavaScript、他の場所の <use> の参照が要素のIDに依存している場合は、ID を保持をオンにしてください。必ずプレビューを確認してください。スクリプトや外部参照を含む特殊なSVGは、手動の調整が必要な場合があります。
SVGオプティマイザーの仕組み
ツールはSVGO 4のブラウザ版を必要に応じて読み込み、preset-default のプラグインを適用します。XML宣言、doctype、コメント、メタデータ、エディタの名前空間の削除、属性と数値のクリーンアップ、図形のパスへの変換、グループの統合、パスデータと変換の書き換えなどです。SVGO 4の既定のプリセットは viewBox、<title>、エディタ由来でない <desc> を保つため、拡縮とアクセシビリティが維持されます。複数パスでは、出力が小さくならなくなるまでプラグインが繰り返されます。
一般的な使用例
- コンポーネントライブラリに追加する前の、デザインツールから書き出したアイコンの縮小
- HTMLにインライン化できるようにするSVGロゴの整理
- ページを速く読み込むためのSVGスプライトの縮小
- ファイルパスや作成者名が漏れるエディタのメタデータの削除
セキュリティ注意事項
画像はブラウザ内でCanvas APIを使ってデコード、処理、エンコードされます。サーバーには何もアップロードされません。
よくある質問
SVGOの最適化は可逆ですか?
既定のプリセットでは、ほとんどの場合、見た目上は可逆です。数値の精度を下げすぎる(小数点以下0〜1桁)と小さな図形がずれることがあるため、プレビューを比較してください。
最適化後にCSSが動かなくなったのはなぜですか?
SVGOは未使用のIDを短縮または削除します。スタイルやスクリプトがそれらを参照している場合は、ID を保持を有効にしてください。
viewBoxは削除されますか?
いいえ。SVGO 4の既定のプリセットはviewBoxを保ちます。任意のwidth/height を viewBox に置き換えるは、固定サイズのほうを削除して、SVGをレスポンシブにします。