Pixel draw
A pixel art board with an adjustable grid (8×8–64×64), 16-color palette and custom picker, pencil/eraser/bucket/eyedropper, clear, undo and redo, PNG export with a per-cell scale and re-importable JSON.
Runs in your browserEvery computation happens in your browser — your data never leaves this device.
Board
Press and drag on the board to paint continuously; the picker tool sets the current color from a cell.
Tool
Status
What this tool does
- Draw a favicon, app icon or tiny sprite: paint cells directly on an 8×8 to 64×64 grid instead of opening a full image editor.
- Make a pixel-art illustration for docs, slides or chat without any art skills — a 16-color palette plus a custom color picker is enough.
- Block out retro game assets here, export a PNG and refine it in your engine; pixels per cell scale up to 64×.
- Save the artwork as JSON and paste it back later on another machine — shapes and colors survive the round trip.
Example
Input
16 × 16 grid, 16 pixels per cell
Output
Exported PNG size: 256 × 256 pixels
The board itself is drawn on a canvas; the exported pixel size is simply the grid size multiplied by pixels per cell, so 16 × 16 = 256.
Frequently asked questions
Can I undo a mistake in the middle of drawing?
Yes, and you can redo as well. The undo stack keeps the last 60 steps. One press-and-drag stroke counts as a single step, so a long line will not flood the history.
Is clearing the board reversible?
Yes — clearing is also pushed onto the history stack, so one undo brings it back. Just remember the stack holds 60 steps, so an old clear can fall off after many later edits.
How does the bucket tool decide what to fill?
It spreads in the four orthogonal directions and only fills the connected area that has exactly the same color as the starting cell; diagonals do not count as connected. If the starting color already equals the fill color, nothing changes.
Why does importing a JSON file fail?
Three usual causes: the JSON is not syntactically valid; size is outside 8–64 or the grid array length is not size squared; or a cell color is not in #RGB / #RRGGBB form. Fix those and it imports.
Is my drawing uploaded anywhere?
No. Painting, PNG export and JSON serialization all run in the browser with no network requests, and it works offline.
Keywords:pixel art像素画像素画板dot artico 编辑sprite导出 pngjson 导入