概要
サイズがバラバラの画像を指定キャンバスに収めるノードです。CSSの object-fit と同じ発想(Contain/Cover/Stretch/None)で、素材の規格化—— 「全部64×64に揃えて下中央に配置」のような整形——を1ノードで行います。
使い方のポイント
- ドット絵の鉄板設定:
fit_mode=Contain+sampling=IntegerOnly。 拡大は2倍・3倍、縮小は1/2・1/3のような倍率だけを使い、必ずキャンバス内に収める - スプライトシート作りの前処理に便利: サイズ違いのコマを
None+Bottom-Centerで揃えると「足元基準」のアニメになる - 単に切り出し・余白追加だけなら
canvas_resize、 自由な伸縮だけならcontent_resize
関連ノード
canvas_resize— 配置固定の単純なキャンバス変更content_resize/pixel_scale— 伸縮そのものsprite_sheet_pack— 規格化した後の行き先の代表
フィットモード一覧
| モード | 日本語 | 効果 |
|---|---|---|
| Contain | 内包 | キャンバス内に収まる最大サイズ。アスペクト比維持、余白あり |
| Cover | カバー | キャンバスを覆う最小サイズ。アスペクト比維持、はみ出しクリップ |
| Stretch | 引き延ばし | アスペクト比を無視してキャンバスいっぱいに引き延ばし |
| None | 配置のみ | リサイズなし。指定キャンバスに配置のみ |
スケール方式
| 方式 | 日本語 | 説明 |
|---|---|---|
| NearestNeighbor | ニアレストネイバー | フィットサイズに正確にスケール |
| IntegerOnly | 整数倍のみ | 拡大は最大の整数倍(1×, 2×, 3×...)、縮小は収まる最大の整数分の1(1/2, 1/3...)でスケール |
IntegerOnly はドット絵に特に有用です。端数の拡大を避け、入力がキャンバスより大きい場合も 1/2、1/3……のうち全体が収まる倍率を選ぶため、
Containで画像が切れません。
使用例
ドット絵をプレビューキャンバスに収める
16×16のドット絵を width: 64, height: 64, fit_mode: Contain, sampling: IntegerOnly → 4×拡大で64×64。
背景画像をキャンバスにカバー
48×32の背景を width: 64, height: 64, fit_mode: Cover, anchor: Center → アスペクト比維持でキャンバスを覆い、はみ出し部分クリップ。
スプライトをキャンバスに配置
16×16のスプライトを width: 32, height: 32, fit_mode: None, anchor: Bottom-Center → 下中央に配置、周囲に余白。