Handy Orchard

Sprite atlas packer

Combine local sprites into a PNG atlas and download exact frame coordinates as JSON.

Your input

Select up to 100 supported still images in the desired order. Duplicate filenames receive separate stable IDs.

Outputs are cleared when the input changes.

Result

Enter your data or use the example, then run the tool.

Worked example

Two 16 × 16 sprites with maximum width 32 and spacing 0 produce a 32 × 16 atlas, with frames at (0, 0) and (16, 0).

Method

A deterministic shelf packer uses input order and starts a new row when the next sprite cannot fit. JSON records each stable ID, source filename and exact source-sized rectangle.

Limits

Not optimal bin packing. Images are not rotated, resized or trimmed. Maximum 100 files, 20 MiB each, 100 MiB total input and 40 million decoded pixels. Output is at most 40 million pixels and 16384 pixels on either side.

Sources

MDN: drawing image regions

Related tools

Image cropperImage palette extractorPhoto contact sheet

Your inputs stay on this device. Only optional, consented page visits are measured. Input values, files, filenames and processing logs are not sent to Analytics.

When switching languages, text, settings and selected files are temporarily kept on this device. Transfers are removed after restoring; interrupted transfers are cleaned up on a later visit. Inputs and files are never uploaded.