# Export separate gif frames , wheres the function?

**URL:** <https://community.aseprite.org/t/export-separate-gif-frames-wheres-the-function/13283>\
**Category:** Features\
**Created:** [March 2, 2022, 12:54am UTC](https://community.aseprite.org/t/export-separate-gif-frames-wheres-the-function/13283 "2022-03-02T00:54:42Z")\
**Posts on this page:** 4\
**Page:** 1

<div class="post-metadata">

**Author:** ![2blackbar](https://community.aseprite.org/user_avatar/community.aseprite.org/2blackbar/32/3715_2.png) [@2blackbar](https://community.aseprite.org/u/2blackbar)\
**Post date:** [March 2, 2022, 12:54am UTC](https://community.aseprite.org/t/export-separate-gif-frames-wheres-the-function/13283/1 "2022-03-02T00:54:42Z")

</div>

Hey i cant find it, could it be that such basic function does not exist even in cli ?

---

<div class="post-metadata">

**Author:** ![Olga\_Galvanova](https://community.aseprite.org/user_avatar/community.aseprite.org/olga_galvanova/32/3294_2.png) [@Olga\_Galvanova](https://community.aseprite.org/u/Olga_Galvanova)\
**Post date:** [March 2, 2022, 1:09am UTC](https://community.aseprite.org/t/export-separate-gif-frames-wheres-the-function/13283/2 "2022-03-02T01:09:35Z")

</div>

if you mean whole animation as a sequence, then i don’t think there’s that option. you can export png sequence and batch convert it with some image viewer.

---

<div class="post-metadata">

**Author:** ![2blackbar](https://community.aseprite.org/user_avatar/community.aseprite.org/2blackbar/32/3715_2.png) [@2blackbar](https://community.aseprite.org/u/2blackbar)\
**Post date:** [March 2, 2022, 1:13am UTC](https://community.aseprite.org/t/export-separate-gif-frames-wheres-the-function/13283/3 "2022-03-02T01:13:40Z")

</div>

yeah thats weird, did notbody requested it ? i have xnview ot batch convert but would be better to just use aseprite for all of that extra work

---

<div class="post-metadata">

**Author:** ![behreandtjeremy](https://community.aseprite.org/user_avatar/community.aseprite.org/behreandtjeremy/32/6606_2.png) [@behreandtjeremy](https://community.aseprite.org/u/behreandtjeremy)\
**Post date:** [March 2, 2022, 1:50am UTC](https://community.aseprite.org/t/export-separate-gif-frames-wheres-the-function/13283/4 "2022-03-02T01:50:00Z")

</div>

Hi @2blackbar,

If I were in your shoes, I’d just write a Lua script. Here’s a simplified bit as an example:

```lua
local sprite = app.activeSprite
local imgSpec = sprite.spec
local palette = sprite.palettes[1]
local frames = sprite.frames

local scale = 2
local nametemplate = "test_%03d.gif"
local fmt = app.fs.joinPath(app.fs.userDocsPath, nametemplate)
for i, frame in ipairs(frames) do
    local blit = Image(imgSpec)
    blit:drawSprite(sprite, frame, Point(0, 0))
    blit:resize(blit.width * scale, blit.height * scale)
    local frameNo = frame.frameNumber
    blit:saveAs {
        filename = string.format(fmt, frameNo),
        palette = palette }
end

```

Most of the stuff you need to know is in the docs at [app.fs](https://github.com/aseprite/api/blob/main/api/app_fs.md), [sprite](https://github.com/aseprite/api/blob/main/api/sprite.md) and [image](https://github.com/aseprite/api/blob/main/api/image.md). You may want to `print` `app.fs.userDocsPath` ahead of time if you don’t know where that is located in your file directory.

Best to you,  
Jeremy
