Docs Output

Exporting stills, sequences and sprite sheets

One frame, a numbered folder of frames or a single packed grid: the three image exports share a settings panel and differ only in what they write.

This page has not been translated into your language yet, so you are reading the English original.

File ▸ Export offers three image destinations: Image… writes the frame you name, PNG Sequence… writes one file per frame into a folder, and Sprite Sheet… packs the whole range into a single grid image. All three use the same Format, Quality, Resolution and Background rows, so learning one covers the other two.

The Image… dialog, with the format rows on the left and the preview on the right.
A Pixel Mode switch sits in this dialog as it does in every other export window, on by default for a project that is in Pixel Mode. With it on, the crisp grid you drew is what reaches the file; every exporter used to render the smooth vector picture instead.

Format and quality

FormatTransparencyQuality sliderNotes
PNGYesNoLossless. The safe default
JPEGNoYes, 1 to 100Photographic; visible artefacts on flat colour and line art
WebPYesYes, 1 to 100At 100 the slider reads Lossless and switches encoder
BMPNoNoUncompressed. Only for tools that demand it

Quality defaults to 90 and appears only for JPEG and WebP. WebP at 100 is genuinely lossless, not just very high quality: for artwork with flat fills it is often smaller than PNG at identical pixels.

Pick Background from Canvas colour, Black, White, Magenta (chroma key), Green (chroma key) or Transparent. The two chroma key colours are for art you will key out later in another program. Transparent is only listed for PNG and WebP; on JPEG or BMP a dimmed line appears under the rows reading that the format cannot store transparency and the canvas colour will be used instead.

Resolution

Width and Height start from the canvas each time the dialog opens and accept 1 to 16384 pixels. Lock aspect holds the ratio while you drag either one. Everything is re-rendered at the size you ask for, so exporting large is a real render rather than an upscale.

A single image

The Image… dialog has a Frame field instead of a range; it starts at the frame you are on and covers the whole project. The default file name is illustration with the format's extension.

This export is written immediately, with no progress dialog: a still is one render. If the file cannot be written the dialog stays open and shows "Could not write the file." in red, which usually means the folder is read-only or the name is already open in another program.

A PNG sequence

Browse here picks a folder, not a file name. Files are written as frame_0001 with the chosen extension, four digits, one per frame in the Start to End range.

The numbers are project frame numbers, not a count from one. A range that starts at frame 40 writes frame_0040 first, and a range that starts at 0 writes frame_0000, whatever the hint line under the path says. Set your compositor's first frame to match, or export from frame 1.

The dialog is not limited to PNG despite its name: JPEG, WebP and BMP sequences come out of the same place. The footer shows how many frames the current range will produce.

Cancelling part-way leaves the frames already written in the folder. Empty it before you try again, so a half-finished take cannot mix with the next one.

A sprite sheet

The sheet lays every frame of the range into a grid, left to right and then down, each cell exactly the Resolution you set.

SettingRangeDefaultWhat it does
Columns1 to 6410Cells per row. Your last value is remembered
Spacing0 to 64 px0A gutter between cells
TrimOn or offOffCrops each frame to its visible content and packs the pieces tightly instead of using a uniform grid. Columns is greyed out while it is on

A live preview beside the settings shows the sheet the export will produce, with the chosen format, background and Pixel Mode, packed exactly as the real export packs it. Check a background or a format there before running a long render.

Next to the image the export writes a JSON file with the same name, in the layout Aseprite uses and game engines already read. It lists where each frame sits on the sheet, its size before trimming and its duration, and it turns every group marker on the timeline into a named frame tag with its range, direction and colour, so an engine can play "walk" or "jump" by name.

Spacing is inserted between cells only, never around the outside, so a sheet with 4 columns has 3 gaps. Leave it at 0 unless your engine bleeds neighbouring pixels when it scales a sprite.

A line under the two fields reports the frame count, the grid as columns x rows, and the real pixel size of the finished sheet. Watch that number: cell size multiplied by a grid climbs past what graphics hardware will load as a texture very quickly, and 40 frames of 1920 x 1080 is already a 13000 px sheet.

The dialog prints the finished sheet size beside the grid. Past 32767 pixels on either side the sheet cannot be written as one image, so the size line turns red, says why, and Export is disabled until you reduce the frame count, the columns or the cell size.

The whole sheet is held in memory as one image until the render finishes. Keep the cell resolution small. Sprite sheets are for sprite-sized art.
The Sprite Sheet… dialog with Trim on, showing the packed sheet in the live preview and the pixel-size readout.

What carries over

Each of the three dialogs remembers its own Format, Quality and Background, and the sprite sheet also remembers Columns and Spacing. Output paths, resolutions and frame ranges are not remembered. They come back from the project every time.