Beam Benchドキュメント

SVGのサイズが正しく読み込まれない

インポートしたSVGが大きすぎる、または小さすぎます。想定したサイズと異なるサイズになります。

確認できる現象

本来(たとえば)100 mm × 100 mmになるはずのSVGをインポートすると、350 × 350 mmや28 × 28 mm、またはまったく異なるサイズで読み込まれます。

原因

SVGの座標系は柔軟で、ユーザーの意図したサイズと一致しないことがよくあります。単位の解釈は次の要素によって変わります。

  • SVGファイルに明示的な width / height があるか(mminpx などの単位付き)。
  • SVGファイルに viewBox があるか。
  • 元のアプリが「1 unit」をどう解釈するか。

よくある問題:

  • SVGに viewBox しかなく、単位付きのwidth/heightがありません。Beam Benchは単位を推測します。
  • SVGがピクセル単位でエクスポートされ、Beam Benchがそれをmmとして扱います(またはその逆)。
  • エクスポート時に倍率が適用されています。

対処方法

SVGがちょうど3.78x大きい場合

SVGはピクセル単位で、mmとして扱われています。96 DPIでは1 pixel = 1/96 inch = 0.265 mmですが、Beam Benchが1 unit = 1 pixel = 1 mmとして扱うと、倍率は1 / 0.265 ≈ 3.78になります。

InkscapeでSVGを開き、ドキュメントの単位を明示的にmmに設定して保存し、再度インポートします。

SVGのずれが別の倍率の場合

SVGをテキストエディターで開き、<svg>要素を確認します。

<svg width="100mm" height="100mm" viewBox="0 0 100 100">

viewBoxは内部の座標空間です。width/heightがない場合やピクセル単位の場合は、通常、mm単位を明示的に追加するよう編集すれば修正できます。

ファイルを編集したくない場合

  • インポート後に均一に拡大縮小します。インポートしたオブジェクトを選択し、Shape Propertiesで目的のW / Hを設定します。
  • 倍率を記録し、一貫して適用します。

SVGがAdobe Illustratorからのものである場合

IllustratorのSVGエクスポートには、単位に影響する設定があります。「More options」ペインを開き、次を設定してみてください。

  • Decimal places: 4(精度)。
  • Encoding: UTF-8。
  • Use <inline> style attributes。

レーザー加工では、IllustratorよりもInkscapeからエクスポートしたほうが、結果を予測しやすくなります。

回避策: インポートしてからサイズを変更する

1回限りのファイルであれば、1回測定し、意図したサイズに拡大縮小してプロジェクトを保存します。同じ元ファイルを次にインポートするときも、同じ倍率が必要です。

動作を確認する

  • インポートしたSVGが、Measure toolまたはShape Propertiesで正しいサイズになっている。
  • 同じファイルを再度インポートしたときも、常に正しいサイズで読み込まれる。

それでも解決しない場合

On this page