スプライトシート生成ツール
画像をまとめてドロップすると、生成ツールが均等なグリッドに並べ、ブラウザ内で1枚のスプライトシートPNGを描画し、スプライトごとに background-position のオフセットを付けたCSSを出力します。すべてキャンバス上でローカルに実行されるため、サーバーには何もアップロードされません。アイコンセット、レトロゲームのフレーム、多数の個別画像より1枚のファイルが欲しいUI状態に便利です。列数、タイルサイズ、セル間の余白、背景(透明・白・黒)を自分で設定できます。
スプライトシートの作られ方
-
1
画像をドロップ
PNG・JPG・WebPファイルを追加します。上下ボタンで並べ替えたり任意のフレームを削除したりでき、シートは即座に再構築されます。
-
2
グリッドを設定
列数を選ぶと、追加した画像の枚数から行数が決まります。各画像はアスペクト比を保ったまま正方形のタイルに収まるよう拡大縮小され、中央に配置されます。
-
3
タイルサイズと余白を調整
タイルサイズをピクセルで選び、拡大縮小時に隣り合うスプライトがにじまないようセル間に余白を追加します。
-
4
PNGをダウンロードしCSSをコピー
スプライトシートを1枚のPNGとして保存し、生成されたCSSクラスをコピーします。画像ごとに幅・高さ・background-positionを持つ `.spr-名前` ルールが1つずつ作られます。
レイアウトの仕組み
生成ツールは予測しやすい単一のレイアウト、均等なグリッドを使います。列数を指定すると、行数は 切り上げ(画像数 / 列数) になります。各セルは同じ正方形サイズ(選んだタイルサイズ)なので、各画像はアスペクト比を保ってセルに収まるよう拡大縮小され、中央に配置されます。サイズの異なる画像もすべて同じ大きさのセルに収まり、これはbackground-positionを使うCSSスプライトがまさに期待する形です。
| 設定 | 範囲 | 効果 |
|---|---|---|
| 列数 | 1〜16 | 1行あたりのスプライト数。行数は自動計算 |
| タイルサイズ | 32〜512 px | 各画像を収める正方形のセル |
| 余白 | 0〜64 px | 拡大縮小時のにじみを防ぐ、セル間の透明なすき間 |
| 背景 | 透明 / 白 / 黒 | 出力PNGでスプライトの背後を埋める色 |
出力されるCSSの形
各画像はファイル名を冠したクラス(.spr-<名前>)になり、タイルサイズに合わせて自分のセルへオフセットされます。列4、タイルサイズ128 px、余白なしの場合、シートは次のようになります。
.spr-idle { width: 128px; height: 128px; background: url(spritesheet.png) -0px -0px; }
.spr-walk { width: 128px; height: 128px; background: url(spritesheet.png) -128px -0px; }
.spr-run { width: 128px; height: 128px; background: url(spritesheet.png) -256px -0px; }
.spr-jump { width: 128px; height: 128px; background: url(spritesheet.png) -384px -0px; }
.spr-fall { width: 128px; height: 128px; background: url(spritesheet.png) -0px -128px; }
オフセットは2方向に動きます。スプライトは各行を左から右へ埋め、次の行へ折り返します。PNGはCSSの隣に spritesheet.png として保存してください(またはパスに合わせて url(...) を編集してください)。
余白とにじみ
端どうしを隙間なく詰めたスプライトは、ブラウザがシートを拡大縮小するとき(非整数のピクセル比、CSS変換)に互いへにじむことがあります。隣のピクセルが漏れ込まないよう、セル間に2〜4ピクセルの余白を加えてください。
高精細(Retina)ディスプレイ
自動の2xエクスポートはありませんが、より鮮明なシートは簡単に作れます。各スプライトがより多くのピクセルを持つよう大きめのタイルサイズを選び(例: 128 pxの代わりに256 px)、CSS上では半分のサイズで表示します。これで別の工程なしに高精細ディスプレイでも鮮明なスプライトが得られます。
スプライトシートと代替手段
- スプライトシート: CSSでの古典的なアイコンセット、HTML5ゲームのフレーム、多数の小さな画像を1ファイルにまとめると有利なページ。
- SVGスプライト(symbol): 現代的なUIアイコンに向き、劣化なく拡大縮小でき、CSSの
fillを受け付け、background-positionに悩まずに済みます。 - アイコンフォント: 制限はありますが、ごく小さな単色アイコンには今も使われます。
- HTTP/2やHTTP/3での個別ファイル: 多重化により、リクエスト数の重要性は以前ほどではなくなりました。
よくある質問
画像はブラウザー内に残ります。複数ステップの流れでは、選択した画像ファイルとレイアウトがこのブラウザーのタブ内に最大30分間だけ一時保存されます。サーバーへの送信やURLへの追加は行われません。
はい。ただしインラインSVGやSVGの <symbol> スプライトのほうがコンポーネント指向のフレームワークには合うことが多いです。CSSスプライトシートは、静的ページで多数の画像を同時に表示するときに真価を発揮します。
各フレームが1行に収まるよう列数をフレーム数に合わせ、CSSの animation-timing-function: steps(N) とセルごとに飛ぶ background-position で制御します。短いループアニメーション(ローダー、待機状態)に向いています。
グリッドの各セルは同じ正方形サイズ(選んだタイルサイズ)なので、各画像は自分のセルに収まるよう調整され中央に配置されます。スプライトがすでに同じ正方形なら、タイルサイズをそれに合わせれば変更なく通ります。
関連ツール
マテリアルデザイン カラーピッカー
Material Designのカラーパレットを閲覧できます。任意の色調(50からA700)を1タップでHEX、RGB、HSL形式でコピーできます。
方眼紙ジェネレーター
印刷できる方眼紙をオンラインで作成:方眼またはドット罫を選び、間隔をmmで設定し、A4かLetterと好きな線の色を指定して、印刷または鮮明なSVGでダウンロードできます。
罫線入り用紙ジェネレーター
印刷できる罫線入り用紙を無料で作成。カレッジ罫、広め罫、狭め罫を選び、行間をmmで設定し、用紙サイズとマージン線を決めて、印刷またはSVGでダウンロードできます。
旗作成ツール
6種類のレイアウト、色、文字、シンボルで、シンプルな3:2のカスタム旗をブラウザ内でデザインします。SVGまたはPNGをダウンロードするか、ブラウザの印刷ダイアログを開けます。
画像アップスケーラー
AI超解像または従来の補間処理で、低解像度画像を2×、3×、4×に拡大しながら重要なディテールを保ちます。
画像ピクセルレーター
調整可能なブロックサイズで画像全体または選択した領域をピクセル化し、顔、ナンバープレート、またはレトロな8ビットアートの遮蔽に使用できます。
このツールは他の言語でも利用できます
- Generator sprite sheet [PL]
- Generator Sprite Sheet [ID]
- Trình tạo sprite sheet [VI]
- Generador de sprite sheets [ES]
- Sprite sheet-generator [NL]
- เครื่องมือสร้างสไปรต์ชีต [TH]
- Sprite sheet-generator [SV]
- مولّد أوراق السبرايت [AR]
- Gerador de sprite sheet [PT]
- Générateur de sprite sheet [FR]
- Sprite-Sheet-Generator [DE]
- 스프라이트 시트 생성기 [KO]
- Generatore di sprite sheet [IT]
- Генератор спрайт-листов [RU]
- Sprite Sheet Oluşturucu [TR]
- 精灵图生成器 [ZH]
- Sprite Sheet Generator [EN]