Skip to main content

Export and sharing

Export an image​

Tap Share in the editor, pick a format and an upscale factor, then tap Share again. Dixel flattens your visible layers (reference layers are never included), writes the image, and opens the Android share sheet so you choose where it goes. Nothing is written until you confirm.

  • PNG — available to everyone.
  • JPG — a Pro format.
  • Upscale — export at a whole-number multiple of the canvas size, so a 32×32 sprite can go out at 128×128 or larger. On the free tier, export is 1× PNG.

Scale presets​

The Upscale control is a row of one-tap presets — 1×, 2×, 4×, 8×, 16× — the power-of-two factors pixel artists reach for most. Need an in-between factor like 3× or 6×? Tap Custom… for the full list. Dixel remembers the factor you last exported at and pre-selects it next time. Upscaling is always nearest-neighbour, so pixels stay crisp and never blur.

Export size is capped so the result stays within a safe memory budget for your device, and the row only shows the factors that fit. Anything above 1× is a Pro feature. Export runs in the background with a progress indicator; the share sheet opens once the file is ready.

If the project uses a non-square pixel aspect ratio, the exported image carries the stretch by default (a crisp nearest-neighbour bake), so the picture matches the canvas. Untick Apply pixel aspect ratio to export the native square pixels instead.

Export layers as separate files​

Need each layer as its own image — to hand parts to a game engine, re-import elsewhere, or diff a single layer? In the Share dialog's Image tab, set What to export to Layers as separate files.

Dixel then writes one PNG per visible layer to your gallery and offers the whole set through a single multi-file share sheet.

  • One file per visible artwork layer. Hidden layers, reference layers, and group headers are skipped; the count is shown before you export.
  • Each file holds that layer's raw pixels — its blend mode, its layer opacity, and any CRT look are not baked in, so a re-imported layer matches the source exactly.
  • Files are named project_01_layer, project_02_layer, … so they sort in stacking order and group together in your gallery.
  • The Upscale presets apply to every layer. PNG only; 1× is free, and upscaling is a Pro feature — the same rule as the single image export.

Export a tileset​

A tilemap layer exports as a game-ready pair: tap Export tileset in the Tileset panel and Dixel writes a sheet PNG (every tile in a grid) plus a map JSON (our dixel-tilemap format — the tile size, the grid, and each cell's tile index with flip / rotate flags), then opens the share sheet with both files. The sheet imports into Tiled, Godot, or Aseprite; the JSON lets your own loader rebuild the map. Tilemap editing and export are Pro. See Tilemaps and tilesets for the full workflow.

Each file is verified as it is written, so the share sheet never contains an empty or half-written image, and one layer that fails to write never stops the rest.

Export an animation​

When a project has more than one animation frame, What to export in the Share dialog's Image tab has five more choices. All of them are Pro, and each opens the share sheet with its files.

Range​

When the project has tags, a Range choice exports all frames or one tag. The GIF, animated PNG, and video play the range in its direction (a ping-pong tag is saved there and back). The sprite sheet and the frame sequence save the range's frames in order, and the sheet's JSON lists the tags and the direction so a game engine can play them.

Animated GIF​

One GIF in Pictures/Dixel that plays in every browser and chat app.

  • Each frame keeps its duration. GIF counts in hundredths of a second, so Dixel rounds and keeps the total time right. Frames shorter than 20 ms play at 20 ms, because browsers slow down anything faster.
  • Loop forever starts with the project's loop setting. Turn it off and the GIF plays one time.
  • Pick the scale and Apply pixel aspect ratio.
  • An Indexed project keeps its palette exactly. A GIF has at most 255 colours per frame, so a frame with more colours is reduced (without dithering), and half-transparent pixels become fully transparent or fully opaque.
  • Apply CRT (when the CRT effect is on) saves every frame with the CRT look. The GIF is then opaque, and each frame is reduced to 255 colours without dithering, so the glow can band.
  • A long export can be cancelled. Nothing is saved then.

Animated PNG​

One animated PNG (APNG) in Pictures/Dixel with no colour limit: every frame keeps the colours and soft, half-transparent pixels you see.

  • Each frame keeps its exact duration in milliseconds. Frames of 10–11 ms are saved as 12 ms, because browsers slow down anything shorter.
  • The same Loop forever, scale, and Apply pixel aspect ratio options as the GIF. It can be cancelled too.
  • Apply CRT saves every frame with the full CRT look (no colour limit). The file is then opaque.
  • Browsers and many apps play it. An app that does not know animated PNGs shows the first frame, and chat apps often turn it into a still — use the GIF there.

Video (MP4)​

One video in Movies/Dixel for apps that want a video, at 30 frames per second.

  • Each frame keeps its duration rounded to 1/30 s. A shorter frame shows for 1/30 s.
  • A video does not loop by itself, so Length can repeat the animation until the video is at least 3, 10, or 30 seconds long. It starts at 3 seconds when the project loops.
  • Pick the scale (each one the video encoder of the phone can make), the background for transparent pixels (checkerboard or a colour, shared with the timelapse video), Apply CRT when the CRT effect is on, and Apply pixel aspect ratio.
  • It can be cancelled too.

Sprite sheet (PNG + JSON)​

All frames in one PNG in Pictures/Dixel, plus a JSON file in Documents/Dixel (our dixel-anim format: frame size, grid, and each frame's position and duration). Pick the columns, an empty border, the spacing between frames, the scale, and Apply pixel aspect ratio. The dialog shows the sheet size.

  • Layout: Grid or Packed — Grid puts every frame in an equal cell, row by row. Packed puts the frames close together in a near-square sheet.
  • Trim empty edges — removes the transparent edges. In a grid, one crop box holds every frame. In a packed sheet, each frame is cropped to its own pixels.
  • Merge duplicate frames — frames that are the same use one place on the sheet.
  • Apply CRT — when the CRT effect is on, each frame on the sheet is the CRT image. Trim is off then, because a CRT image has no transparent pixels.
  • With these options the JSON file is version 3. It gives each frame its place on the sheet, where it goes on the canvas, and which frame it is the same as, so a game engine can rebuild every frame.
  • Layout, Trim, and Merge are remembered.

See Animation for the JSON format.

Frame sequence (one PNG per frame)​

One PNG per frame, in Pictures/Dixel, in frame order, with the scale, Apply CRT, and Apply pixel aspect ratio options of the still export.

The other export modes​

On an animated project, Flattened image and Layers as separate files export the frame you see (the first frame on the free plan).

Slices and nine-slice​

Mark named rectangular regions on your canvas and export each as its own image — handy for cutting UI parts or individual sprites out of one drawing for a game engine. Authoring is free; slice export is a Pro feature.

Open ⋮ (more) ▸ Slices… and turn on Edit slices on canvas:

  • Drag empty space to create a slice, drag its body to move it, or drag a handle to resize. A Done chip exits the mode. Slices snap to whole pixels.
  • Turn on 9-slice for a slice to set four border insets — the corners and edges that must not stretch, around a stretchable centre. This is how engines scale a UI panel or button without distorting the corners. The borders show as inner guide lines.
  • The slices are a display-only overlay, like the grid: they never change your pixels and stay aligned under view rotation and a non-square pixel aspect ratio.

To export, use ⋮ (more) ▸ Export slices…, or the Export slices button in the Slices… dialog. (Slice export is not in the Share dialog — that dialog handles the whole-image, animation, and timelapse exports.) It writes:

  • One PNG per slice, cropped from the flattened composite, to Pictures/Dixel. Each PNG is native pixels (not stretched by the pixel aspect ratio), so it matches the JSON bounds exactly.
  • One JSON sidecar to Documents/Dixel, listing every slice's name, bounds, and 9-slice centre in the Aseprite convention, so an engine or an Aseprite-aware importer can read the regions.

Where to find the files. The PNGs land in your device's Pictures folder, under Dixel (also visible in the gallery / Photos), and the JSON in the Documents folder, under Dixel — open them with the Android Files app. The PNGs and the JSON of one export share the same time stamp in their names, so they group together.

Slices are saved in the project, so they ride Drive backup and reopen identically.

Slices from every frame​

On an animated project, Export slices asks which frames to use: the current frame (as before), all frames, or one tag. All frames saves one PNG per slice per frame (native size, numbered like the frame sequence), and the JSON sidecar lists each slice's file and duration for every frame. One export saves up to 512 PNGs — for more, export a tag. Static layers are on every frame. Pro.

Timelapse video​

Dixel records how a drawing comes together and can export it as a video. Recording happens automatically as you work (you can turn it off in Settings), so there is nothing to start.

Open Share and switch to the Timelapse tab, then pick a mode:

  • Social (free) — a ready-to-post 9:16 video with your artwork centred, in a choice of durations (10, 15, 30, or 60 seconds).
  • Custom (Pro) — a canvas-native video at your own settings, without the watermark.

Every timelapse opens with the finished artwork held on screen for about a second before the build-up plays, so viewers see where it is heading. The video is written to your device and offered through the Android share sheet, the same way as an image export.

If the project uses a non-square pixel aspect ratio, an Apply pixel aspect ratio checkbox appears on the Timelapse tab (only when the ratio is not 1:1, and ticked by default). With it on, the video carries the same stretch as the image export, so the timelapse matches the finished art; untick it for a native square-pixel video.

Clipboard​

  • Copy places the current selection (or the whole layer) on the Android system clipboard as a PNG, only when you tap Copy.
  • Paste brings clipboard image content in as a floating selection you can place before committing. It lands at the centre of the view, not the centre of the canvas, so you do not have to zoom out to find it. Near an edge it moves in just enough to stay fully on the canvas.

An internal pasteboard also carries content between your own Dixel projects.

Copies are kept in the app's private cache, not in your photo gallery.