完全無料

PNG を SVG に 変換

PNGやJPGなどのラスター画像を拡大しても画質が落ちないSVGベクター画像に変換します。ブラウザ内で安全かつ高速に処理されます。

PNG/JPG をここにドロップ

最大50MBまで対応

または

このツールについて

PNG から SVG への変換は、基本的にはトレース操作であり、形式の変更ではありません。 PNG はピクセルを保存します。 SVG は幾何学的プリミティブを保存します。ピクセル グリッドからスケーラブルなベクトル パスに移行するには、ビットマップを解釈し、類似した色の領域の周囲に近似形状を描画する必要があります。結果は本当にスケーラブルであり、ピクセル化することなく自由にサイズを変更できますが、ソースを完全に再現したものではありません。写真コンテンツのトレースは、ピクセルレベルの色の変化がすべて形状となり、目的を果たさない巨大な SVG が生成されるため、トレースが不十分です。ロゴ、アイコン、線画、および高コントラストのグラフィックスは、明確に定義された境界を持つ少数の色領域を持っているため、きれいにトレースされます。

このコンバータは、potrace に似たベクトル トレース アルゴリズムの JavaScript ポートである imagetracerjs ライブラリを使用します。 PNG は RGBA ビットマップにデコードされ、ビットマップは構成可能なパレットを使用してカラー領域にセグメント化され、各領域の境界がパスにトレースされ、ベジェ近似を使用してパスが簡略化され、結果のパスが SVG パス要素として出力されます。サーバーにアップロードすることなく、パイプライン全体がブラウザーで実行されます。

トレース パラメーターは、忠実度とファイル サイズの間のトレードオフを制御します。より多くの色とより細かいディテールを使用すると、ソースにさらに一致する大きな SVG が生成されます。色を減らし、トレースを粗くすると、より様式化された雰囲気を持つ、より小さい SVG が生成されます。デフォルトはロゴとアイコン用に調整されています。複雑な画像は、設定を調整したトレース パスから恩恵を受ける場合もあれば、単純にベクトル化の候補として適していない場合もあります。

PNG を SVG に変換する理由

PNG のベクトル化は、元の解像度を超えて画像を拡大縮小する必要がある場合に最も役立ちます。特にロゴは適度なサイズの PNG として提供されることが多く、看板、Retina ディスプレイ、および大判プリントで鮮明に表示される必要があります。ベクトル トレースは、品質を損なうことなくスケールする SVG を生成します。トレードオフは、元のピクセルへの忠実度です。

また、SVG は、色数が少なく平らな領域が大きいグラフィックの場合、PNG よりも大幅にコンパクトです。 256×256 の PNG アイコンは 8 KB になる可能性があります。 2 色または 3 色を含む同等の SVG は、多くの場合 1 KB 未満です。 Web フロントエンドに配信される UI アイコン ライブラリの場合、ベクター バージョンではバンドル サイズが削減され、すべての表示密度での鮮明さが向上します。

使い方

PNG をドロップし、トレース設定を選択し、SVG を生成します。

  1. PNG をアップロードする: ファイルをアップロード領域にドラッグするか、クリックして参照します。最良の結果は、ロゴ、アイコン、ライン アート、シンプルなイラストなど、シャープなエッジと少数の異なる色を含む PNG から得られます。写真のトレースが不十分で、巨大な SVG が生成されます。
  2. 必要に応じてトレース オプションを調整します: 色数は、出力に表示される個別の色の数を制御します。パスの単純化 (ltres または qtres とも呼ばれます) は、アルゴリズムが隅をどれだけ積極的に滑らかにするかを制御します。精度が高いほどソースに近い SVG が生成されますが、より多くのパス データが含まれます。
  3. トレースとプレビュー: imagetracerjs アルゴリズムは、色の量子化、エッジ検出、輪郭トレース、およびベジェ フィッティングを通じて実行されます。トレース時間は画像サイズと色の数に応じて変化します。 4 色の 256×256 のロゴが 1 秒以内にトレースされます。 1024×1024 の 16 色の​​画像には数秒かかる場合があります。
  4. SVGをダウンロードする: SVG をデバイスに保存します。ファイルには、パス要素を含む XML マークアップが含まれています。任意のテキスト エディタで開いて、結果を検査したり手動で調整したりできます。

一般的な使用例

技術的な詳細

imagetracerjs は多段階のパイプラインを実装します。色の量子化では、K-means クラスタリングまたはメディアン カットを使用してビットマップを固定数の色に減らします。エッジ検出は領域間のピクセル境界を識別します。輪郭トレースは境界に従って閉じたポリゴンを生成します。線と曲線のフィッティングは、パス データを削減するためにベジェ曲線でポリゴンを近似します。

最も重要なアルゴリズム パラメーターは、色数 (通常: 4 ~ 32)、pathomit (このピクセル数よりも短いパスはノイズとして破棄されます)、ltres (ライン許容値 - 新しいセグメントに分割される前にエッジがどの程度逸脱できるか)、および qtres (二次曲線許容値 - 曲線がどの程度積極的に平滑化されるか) です。デフォルトはロゴに適しています。複雑な画像には、画像ごとの調整が役立ちます。

出力は、パス要素を含む標準の SVG 1.1 です。各色の領域は塗りつぶし属性を持つ 1 つのパスになります。結果のファイルは、任意のブラウザ、ベクトル エディタ、または SVG 対応の設計ツールで開きます。ファイル サイズは主にパス数とノード密度によって決まります。一般的なトレースされたロゴは 1 ~ 10 KB です。

ベストプラクティス

よくある質問

SVG 出力は真のベクター ファイルになりますか?
このツールはラスター イメージをトレースしてベクター パスを作成します。シンプルなグラフィック、ロゴ、線画で最も効果的な結果が得られます。写真では複雑なパスが生成され、期待どおりに見えない場合があります。
SVG と他の画像形式の違いは何ですか?
SVG はベクトル形式であり、画像はピクセルではなく数学的な形状として記述されます。つまり、SVG ファイルは品質を損なうことなく任意のサイズに拡大縮小でき、通常、ロゴやアイコンなどのグラフィックスのラスター イメージよりもはるかに小さくなります。
注意すべき制限はありますか?
最大 50MB のファイルがサポートされます。非常に大きいファイルや複雑なファイルの処理には時間がかかる場合があります。すべての変換はブラウザーで行われるため、処理速度はデバイスによって異なります。
変換中、私の画像は非公開に保たれますか?
はい。 PNG ファイルは、Canvas API と JavaScript を使用してブラウザ内で完全に処理されます。サーバーには何もアップロードされません。ファイルはデバイスからコンバータに直接送信され、デバイスに戻ります。
トレースは Illustrator または Inkscape で編集できますか?
はい。出力はパス要素を含む標準 SVG です。 Illustrator と Inkscape はどちらもネイティブに開き、パスを編集したり、色を変更したり、結果を調整したりできます。
私の PNG はサーバーにアップロードされていますか?
いいえ。トレースは、imagetracerjs を使用してブラウザーで行われます。ファイルはデバイスから流出しません。
SVG ファイルが大きいのはなぜですか?
通常は、ソース画像の色が多すぎるか、詳細が多すぎることが原因です。色数を減らすか、パスの単純化を増やすか、よりきれいなジオメトリを持つ別のソース イメージを使用してみてください。
透明度のある PNG をトレースできますか?
はい。透明ピクセルは SVG ではパスのない領域になります。 SVG が任意の背景色でレンダリングされる場合、透明な背景は保持されます。