How can I generate PNG images from SWF files?

extract images from swf
swftools
create swf file online
swf decompiler online
swf editor
swf joiner
swf decompressor
swf dumper

I have around 2,000 SWF files used for avatar generation for my website. Times have changed and I'd like to move away from Flash. My only issue with that is I would have to generate 2,000 PNG images from those SWF files to be able to do so. So, naturally, I looked into automated tools to help with that.

I was looking into swftools and found swfrender and it was a great tool but it didn't work for my SWF files. The object in the SWF files is positioned at 0, 0 and it's off the screen like so:

So, when swfrender renders the image, it turns out like this:

I'm looking for a tool that can extract the stage contents, no matter the position, and output it into a PNG image.

Some additional details:

  • The SWF files are all AS1 and AS2
  • Some SWF files have multiple frames
  • The SWF content varies in size between each SWF so some could be 100px while others might be 10px

I'd like this to be command-line if possible, so it can be done automatically and somewhat faster than it would take me to go through each one and manually export it.

What swfrender does is to render the SWF. You could try extracting the objects instead with swfextract, which is also included with swftools.

From the swftools Wiki:

To extract everything use...

swfextract --outputformat "extract_%06d.%s" -a 1- test.swf

And some help about it from the man page:

Extract all:

        -a                               Extract all files
        --outputformat "extract_%06d.%s" Filename to use for extraction (printf format)

Otherwise, if you'd prefer to only extract certain objects, you can do it:

To extract individual items. First, run swfextract file.swf and get whatever the flash application contains. The output looks like:

Objects in file file.swf:
[-i] 8 Shapes: ID(s) 2, 5, 7, 9, 11, 13, 15, 17
[-i] 1 MovieClip: ID(s) 18
[-j] 8 JPEGs: ID(s) 1, 4, 6, 8, 10, 12, 14, 16
[-F] 1 Font: ID(s) 3
[-f] 1 Frame: ID(s) 0

These are the objects you will be able to extract. For example, if you want to extract the third jpg (ID = 6) to a file file.jpeg, the command is:

swfextract -j 6 file.swf -o file.jpeg

So, if you wanted to extract everything from every SWF file, and not to mix all up, the best solution that comes to my mind is to have every bunch of files extracted from every SWF inside their own folder. You could reach that by using a for loop: to create a folder for every SWF file, and to extract every element of the SWF inside that folder. That would be useful for processing them later.

But shapes, for example, are extracted as SWF, and you could render them, or resize them before rendering them.

Another point is that you'd maybe have to resize, or move the objects before rendering them. You can afford that with another tool inside swftools: swfcombine. This tool is usually used to combine SWF objects, but you can use it to move or resize the elements on it:

−d, −−dummy    Don't require slave objects (for changing movie attributes)

And then you should be able to render it properly.

I'm sorry if I confused you, but there are so many options... It seems that it depends on the particular case (I don't know how this handles the different kinds of SWF, such as AS1, AS2, et cetera). In any case, I hope this helped you at least!

How can I generate PNG images from SWF files?, You can create the flash file as follows: If the report image is called "report.png", execute "png2swf -o report.swf report.png" on the command line. There should now be a file report.swf, that can be  JPEG files are small, but they cannot be transparent. SWF files are small and support transparency. With this service you can compress a large PNG file with JPEG algorithm. As a result you will get an SWF file. In most cases SWF file size is 10 times smaller than the original PNG image. Then you can replace PNG for SWF in your landscape.

Not to bring up zombie thread but after trying the swf tools as suggested by Lutarisco and not being able to install I found https://github.com/jindrapetrik/jpexs-decompiler/releases/tag/version11.2.0

Hopefully this will help anyone else trying to extract images from their swfs :) You can set background colour to clear and choose export as shapes or frames, you can aslo manipulate the export size to get larger images

Make flash plugin from a png, PNG images with scaling. ffdec_11.3.0_setup.exe is the installer Windows SWFs. But it has no .PNG output, only the .SVG vector format. Hello friend, has your issue been solved? If not, you can try to use some useful tool to help you such as some video/audio converter. There is one video converter I have tried a certain time and it gave me a good experience.

Export > Export Image. Export it to png from a FLASH file. It's impossible to have the photo from SWF, unless you are using the Windows cutting tool.

SWF to PNG freeware, AnyConv is a five-star SWF to PNG converter tool ⭐ ️Convert swf files to png online in seconds MIME type, application/vnd.adobe.flash-movie, image/png Technical details, Programmers can generate SWF files from within several Adobe  I have some text with transparent background and I imported this png image to flash. Now when I create a swf file, it doesnt show me transparency. I tried using wmode parameter as transparent in the webpage but that wont work. Stage of my flash file is of the same size as the png image with text in it.

SWF to PNG: convert swf to png for free online, This piece of code will help you to generate images from your flash movie files[.​swf]. Background. Sometime it's very important to get the screen shot of the first  It supports 24-bit RGB colors, matching images and shades of gray. However, as a non-professional format, PNG can not display other color spaces. Most programs allow to open such files, they can also run in any browser. Images are different in small weight with good quality. Programs

Convert SWF movie to Image [.jpg, .gif, .png, .bmp], It can process a number of PNG images serially into a SWF file or otherwise batch-create SWF files out of individual PNGs. If you need to  2. Open an image editor like Windows Paint. 3. Paste (Ctrl+V) 4. Crop the image to get rid of the stuff around it. 5. Save the image as PNG. But if you want to get PNG images without quality loss, you’d better use the SWF to PNG Converter to convert SWF file to PNG images without losing any original quality.

Png2swf: convert PNG images to flash SWF files, I have some text with transparent background and I imported this png image to flash. Now when I create a swf file, it doesnt show me transparency. I tried using  ShockWave Flash files (.swf) can be build from many elements, including pictures (.png files for example), audio, or even some video. So with dedicated ShockWave Flash building programs or some similar utility tools it should be easy to achieve png to swf conversion or some kind of work operation. Updated: January 28, 2020

Comments
  • An interesting problem, but phrases like "I'm looking for a tool " indicate an "out-of-scope" question for StackOverflow. Best to edit your Q, removing such phrases (you have several like that) and show the "code you have actually tried". Others may chime in with better tools, or non-obvious use of available options. Good luck.