SwfSpriteSheet 1.7 – Sprite sheets from Flash

I made an open source application to generate a PNG spritesheet file from a SWF.

In other words the application creates a PNG file that shows an image sequence, every image of this sequence is one frame of the swf.

This is usefull to allow pixel based game engines to run animations made with Flash.

Supports any kind of timeline structure or actionscript animation.



Screenshot 2



Download From Here


  • Are actionscript animations supported?
    • Yes
  • Supports 3D animation made with an engine that uses Stage3D?
    • Oh Yes!
  • The background of the generated PNG will be transparent?
    • Yes. The application converts  the backround color of the SWF into transparent pixels.
  • If I load a swf with big dimentions the application fails, why? why???????.
    • Because Flash doesn’t support big bitmaps. Anyway, if you need a sprite sheet so big, you are probably doing something wrong with your project.
  • What happens if I have only one frame in the main timeline and lot of movieClips with animation inside them?
    • No problem, the application handles that situation perfectly.
  • I need to synchronize my swf changes and send them to the png file automaticly.
    • There is not a feature to do that for the moment, will be included in future versions….. may be…

Version 1.7 new features:

  • Stage3D supported (not tested).
  • Dynamic resize, now you can see more of the preview area without the need of scrolling.


This is a PNG made with swf  spritesheet creator as an image editor show it:

Source code:

If you want to report a bug, request a feature, send your source code to be uploaded or anything, leave me a reply.

About fermmm

AS3 and Haxe developer from Argentina.

49 responses to “SwfSpriteSheet 1.7 – Sprite sheets from Flash

  1. Hi,
    just wanted to tell you, that your spritesheet tool is really usefull. You should keep working on it.

    I’m currently working on a XBox Indie Game and i’m using your tool alot.

  2. hi, this is what i’m looking for, thx is very helpfull 🙂

  3. GaoFei

    Thank you very usefull keep up

  4. Thanks! This is a good tool!

  5. Hi

    Hi.. Thanks a very good tool.. I am saving this link in my instapaper. lol…

  6. Seth

    This is pretty neat. Would really like a way to specify number of rows/columns!

  7. nicolas

    Hi fermmm,

    great program and I really want to use it for a game I’m making. However, I am having problems with drawing all the sprites in a single row. When I choose “Sort all frames in 1 row” in the advanced options, the preview picture disappears, all the buttons become grey, it says “SWF loaded” and I can’t do anything anymore. Could you please fix this? I really want to use this program.

    It works perfectly when I use the options that make it a grid by the way.

    • The problem comes from Flash, I can’t fix the issue.
      The application is made with flash and flash allows bitmap creation if it’s smaller than 2880 pixels of width or height.
      Try exporting your swf with smaller stage size (and smaller content).

      The 1.6 version comes with an error message when that happens.

  8. Thanks a lot fermmm !
    Really great tool and concept, It will save lots of time in conversion process..


  9. Animedude5555

    Great tool but it’s missing a few things that I’d like to see definitely put in the next version of the software:
    The ability to rip frames from “sprite” type objects in an SWF file (I have an SWF file who’s graphics are MAINLY stored in frames of “sprite” type objects, and not stored in raw “frame” type objects. I can tell because I’ve opened up my SWF file in SWF Decompiler).
    The ability to convert “shape” type objects from an SWF file to PNG files.
    The ability create separate PNG files (instead of a single large sprite sheet).
    The ability to choose the rendering size in percent (with 100% being default) for these SWF graphics instead of only render at 100% (remember these sprites and stuff are actually vector graphics that can be rescaled prior to rendering into a bitmap graphic for saving).

    • From all the things you mentioned, the only thing that it’s possible to do is make a feature to generate separated png files. I need to know why people could need something like that in order to decide if it’s an important update to work on it.

      • hey fermmm,
        thanks for this lovely tool – separate files would be quite helpful – i export for rudimentary JS-HTML-CSS animations and those scripts (spritely, fc-tape) require spritesheets to be either “horizontal” or “vertical” tapes. it’d would be easier to “assemble” individual files (via imagick/convert) than hacking the spritesheet you (already very good!) app exports.

  10. Animedude5555

    I can rip shape and sprite type objects using Sothink SWF Decompiler and then using your software perform the needed SWF to PNG conversion. So why not make a single piece of software that does both?

  11. Animedude5555

    Also separate PNGs are great when making a game that you have to load in multiple image files because the game engine doesn’t have the capability to break a sprite sheet into separate sprites.

    • that would be a bad engine that doesn’t take advantage of using a single png file.

      • Animedude5555

        Sometimes different frames of a game graphic take up different different sized frames and as a result different images would be required, not a single image divided into equal sized segments.

      • why exactly different sized frames can’t be placed into equal sized segments PNG?
        In this application when you have different sized frames the segments are generated with the size of the biggest frame, so that solves the problem

  12. Azicuetano

    Congratulation!!! Awesome tool! 🙂

    Please, take under consideration for new versions add an option to choose the number of sprites in a row. This feacture could lend us to optimice textures in memory. For example, I have a sprite 114×256 with 31 frames. It’s better a 912×1024 texture (8×4) than the actual default texture 684×1536 (6×6).

    ¡¡¡Thanks again for this usefull tool!!!

    • Ok I’ll take that under consideration

      • Zaynoun

        i have a HQ SWF animation with vector graphics animated, i like to retain the quality while converting to sprite, currently it appears that the captured frames quality is degraded.
        Is there an option to make it work to retain qualiy and maybe decide the size in the end ?

  13. Anonymous

    great stuff! worked well for me! thanks

  14. This is a great tool and it works well. My 1 feature request would be to be able to specify the exact proportions of each sprite. Like, the width and height. Sometimes I like to leave a bit wider proportions around the edge of the SWF, and this would be a handy way to do that. Regardless, great app, thanks!

  15. oksid

    Great! Thanks guys!

  16. I just stumbled across this today and I would like to give my thanks. This is exactly the tool I was looking for. Keep up the good work!

  17. shalom

    great tool how can i download it?


  18. Pingback: Research: Creating Sprite Sheets | digital media production

  19. Pingback: Day 18 – Maps and Sprites! |

  20. Great tool, thank you for sharing it’s making my life much easier!

  21. sanyadyak

    Big thanks! Nice tool and code, thanks for sources.

  22. umut demirel

    Thanks for it!!! It really helped me to create sprite sheet freely. But, why dont you add a feature that creates x times y sprite sheet in which we decide the x and y values? It only creates 1 times x and square and default.

  23. Wow, thanks! This is what I’ve been searching for! ❤

  24. AARON


  25. crazybg

    I have a question about the saved .png file
    Where is PNG file saved?

  26. Very nice man … thank you very much!

  27. shawneetap

    WONDERFUL. I’ve look through a lot of tools online and yours is by far superior!

  28. Felix

    Don’t know if you’re still reading comments and keeping up with your program, but I just wanted to say a BIG THANK YOU! I just spent 2 hours with another SWF to spritesheet program trying to get the settings just right – and then I found your program. It took me FIVE MINUTES! to do what I wanted. Thanks again!

    • Its nice to see that there is still interest on this even after Flash CS6 with the spritesheets feature came out. I wonder what is that you find so usefull about this application, thanks for your feedback!

  29. Renjith

    Thank you its a super tool and works well.
    I have a feature request..
    I think it would be better if we can specify maximum width/columns count or Maximum rows or height of sprite sheet

    Any way its very use-full tool

    Thank you

  30. Animedude5555

    You need an option for setting the size and positioning of frames manually, because one form of copyprotection to keep sprites from being ripped but still playing correctly in a flash player is to make it so only a SMALL PART of the frame is captured by your ripper somehow, but it shows properly in the adobe flash player. This could be fixed if I could MANUALLY set the cell size and position of the “sprite ripping grid” in your program. Auto is great for when it works, but more often than not (and I believe it’s a form of copyprotection) your program FAILS to rip the spirtes without chopping off half of the image in each cell of the “sprite-ripping-grid”.

  31. Is there any chance of getting a “batch mode” that doesn’t flash up a window when you run it?

  32. Such Ch

    I seem to be only half the actual image in each frame for my spritesheet… am I being stupid? Or does this fall under the “don’t put such a large swf into the creator”? I don’t think my swf is large at all. Any help?

  33. Very good tool! You saved my video game! 😀

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Google+ photo

You are commenting using your Google+ account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s