(Dokumentation på engelska)
GIF Frame Extractor
What it does
Decodes an animated GIF and exports every frame as a PNG, with each frame’s delay shown in milliseconds. The decoder is our own from-scratch GIF89a parser — header, color tables, graphic-control extensions and LZW image data — with no external library and no network access; the file never leaves your browser. Transparency is preserved (transparent palette indices become alpha).
How to use
- Drop a
.giffile. - Press Extract — frames render as a strip with their delays.
- Save individual frames or download every PNG at once.
Examples
A 12-frame spinner GIF extracts to spinner-frame-001.png …
spinner-frame-012.png, each labeled with its dwell time (commonly 100 ms).
Good to know
- Frame sizes follow the GIF’s frame rectangles — optimized GIFs often store only the changed region per frame after the first.
- The decoder handles interlaced frames, local color tables and the NETSCAPE loop counter.
- The same parsing logic ships as a Go CLI twin, so the behavior is cross-checked between implementations.