ForHosting KIT · 画像の編集・解析

複数画像をスプライトシートに結合

2枚以上の画像を送ると、1枚のPNGシートと、各画像の名前・位置・大きさを記した対応表が届きます。30個の小さなバッジも、30回ではなく1回の読み込みで済みます。月額契約は不要で、使った分だけのお支払いです。

近日公開画像あたり$0.002

このタスクは現在ご利用いただけないため、購入できません。料金は一切発生しません。

API仕様を見る
ご利用方法 ウェブ APIのみAPIメールTelegramアプリ 近日

アイコンやボタンなど複数の小さな画像を、1枚のスプライトシートにまとめて結合する機能です。

小さな画像を1枚にまとめる理由

ページに画像が1つ増えるたびに、表示までの往復が1回増え、訪問者はそのぶん待たされます。アイコンフォントは使われなくなりましたが、根本の問題は残っています。小さな画像が数十個あれば接続も数十回になり、回線がどれほど速くても接続そのものに時間がかかります。ゲームの世界では、何十年も前から多くの画像を1枚のテクスチャにまとめる方法でこれを解決してきました。同じ考え方は、今もウェブのアイコン集や画面部品のライブラリ、スマートフォンアプリの素材に使えます。

シートの並べ方と使われ方

画像は、すき間の少ないほぼ正方形のシートに詰めて配置され、列の数を指定することもできます。シートと一緒に届く対応表には、元の画像ごとの名前、位置、幅と高さが記されているので、スタイルシートやゲームエンジンで1つずつ切り出して表示できます。80個のアイコンを毎晩1枚にまとめるデザインチームや、30個の信頼バッジと決済ロゴを1枚にするランディングページなどで使われています。

スプライトシートが役立つ場面

サイトの中で繰り返し使う小さなアイコンやボタン画像は、1枚ずつ読み込むとその数だけ通信が発生します。あらかじめ1枚のシートにまとめておけば、読み込みは1回で済み、CSS側で表示位置だけを切り替えれば済みます。

現在の提供状況

この機能は現在ベータ版として提供しています。画像の並び順や余白の細かい調整など、一部の設定は今後追加予定です。基本的な結合とCSS出力は問題なくご利用いただけます。

アイコンセットの一括結合

Webサイトを運営する開発チームが、20種類のUIアイコンを1枚のスプライトシートにまとめ、ページの読み込み時間を短縮しています。

小規模サイトの表示速度改善

合同会社みどりデザインが制作するコーポレートサイトでは、SNSアイコンやボタン画像をまとめて結合し、通信回数を減らしています。

社内管理画面のアイコン整理

社内ツールを開発する田中大輔さんは、頻繁に使う小さなアイコンをスプライトシート化して、画面の表示をわずかに軽くしています。

アップロードした画像はどうなりますか?

結合処理にのみ使用され、処理後は削除されます。生成目的以外での利用や保存は行っていません。

画像の枚数に上限はありますか?

1枚あたり15MB、最大1200万画素までの画像に対応しています。結合できる枚数はシートのサイズによって変わります。

なぜベータ版なのですか?

並び順の指定や余白調整など一部の機能をまだ拡張している段階のためです。基本的な結合とCSS出力はそのままご利用いただけます。

出力されるCSSはそのまま使えますか?

はい。 各画像の座標とサイズを記したCSSファイルが結合後の画像と合わせて出力されます。

スプライトシートはどんな場面で役立ちますか?

アイコン集を1つのファイルで配布したいとき、ゲームキャラクターの歩行コマを1枚にまとめたいとき、ページ上の小さなロゴを一度に読み込みたいときなどに役立ちます。

このページの機能はすべてAPIからも利用できます。自社システムに組み込みたいチーム向けのセクションです。それ以外の方は上のツールをそのままお使いください。

POSThttps://api.kit.forhosting.com/image/sprite

認証済みのPOSTでタスクを作成し、結果はWebhookまたは署名付きリンクで受け取ります。この機能はAPIで利用でき、対話型のWebツールとしては提供していません。

curl -X POST https://api.kit.forhosting.com/image/sprite \
  -H "Authorization: Bearer $KIT_KEY" \
  -H "Content-Type: application/json" \
  -d '{"images":["https://ejemplo.com/imagen.jpg","https://ejemplo.com/imagen-2.jpg"]}'
{
  "images": [
    "https://ejemplo.com/imagen.jpg",
    "https://ejemplo.com/imagen-2.jpg"
  ]
}
{
  "task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
  "type": "image.sprite",
  "status": "queued",
  "_links": {
    "result": "/tasks/tsk_…/result"
  }
}

非同期APIです。task_idは即時に返ります。ポーリングは1秒あたり1リクエストまでです。

1リクエストあたり$0.002
画像あたり$0.005

単価はすべて公開しています。トークン換算や独自クレジットはありません。失敗したタスクは課金されません。

max_mb15
max_megapixels12
HTTPコード意味
401unauthorizedAPIキーが無効か、指定されていません。Authorizationヘッダーを確認してください。
402insufficient_balance残高が不足しています。チャージ後に再度お試しください。
404unknown_type指定されたタスクタイプは存在しません。タイプ名を確認してください。
429rate_limitedリクエストが多すぎます。しばらく待ってから再度お試しください。

CSSのbackground-positionで個別に呼び出せるため、リクエスト数を減らせます。

結合の仕組み

座標を1件ずつ手作業で計算する必要はありません。複数の画像ファイルをアップロードすると、余白を詰めて1枚のシートに並べ、各画像の座標とサイズを記したCSS(またはJSON)を合わせて出力します。

料金について

1リクエストあたり$0.002(米ドル)に加えて、結合する画像1枚ごとに$0.005です。アイコン10枚をまとめる場合、合計は$0.052になります。

料金はどのように計算されますか?

1リクエストあたり$0.002に加えて、結合する画像1枚ごとに$0.005です。

商用サイトでも利用できますか?

はい、商用サイトでの利用に制限はありません。

KITの完全なドキュメントを見る →