同じSVGでもwidth・heightとviewBoxの設定でサイズや余白が変わります。まず出力サイズと図柄の座標を区別しましょう。

出力ピクセルと図柄の座標

viewBox="0 0 100 50"は内部の100×50の座標範囲です。800×400で出力しても各図形の座標を8倍に書き換える必要はありません。

意図した比率を保つ

100×50と800×400は2:1ですが800×800は異なります。比率が違うとpreserveAspectRatioにより余白や切り抜きが発生します。見せる範囲を変える場合だけviewBoxの始点や範囲を変更してください。

整理で除去される内容

元SVGをページへ直接挿入せず、対応図形・属性だけを残したソースでプレビューとPNGを作ります。外部画像・スタイル・スクリプト・use参照・フィルターに依存した部分は欠ける場合があります。

違いが出たら整理済みソースを確認し、元のエディターで単純な図形やパスとして書き出します。文字形状を固定するには元エディターでパス化が必要な場合があります。

例:2:1のシンボルを800×400へ

viewBox 0 0 100 50のシンボルをWeb用PNGにします。

手順

  1. SVGを開きviewBoxは維持します。
  2. 幅800・高さ400を指定して作成します。
  3. 文字や参照図柄の欠けを確認してPNGを保存します。

結果

800×400のPNGで2:1を保ちます。未対応要素がある場合は元エディターで修正が必要です。

よくある質問

viewBoxを空欄にすると?

元のviewBoxを使います。ない場合は有効な正のピクセルサイズで決め、両方なければ拒否します。

参考資料

関連ガイド