SWFTools is an open source software tool suite for creating and manipulating SWF files. Distributed under the terms of the GNU General Public License, it may be compiled from C source, to run under Linux, Microsoft Windows, and Apple OS X. On Microsoft Windows systems, the pre-compiled installer also installs a GUI wrapper for the suite's PDF to SWF conversion tool, pdf2swf.
SWFTools relies upon, and links against, additional third-party libraries for some of its functionality, e.g. Xpdf and PDFlib, freetype, libjpeg.
The current stable SWFTools suite, version 0.9.2, consists of the following components:
A standalone ActionScript 3.0 compiler.
AVI animation files to SWF converter (now deprecated, use MEncoder or ffmpeg for this).
Font file (TTF, Type1) conversion to SWF.
GIFs to SWF conversion. Able to handle animated gifs.
Generates a slideshow from one or more JPEG pictures. Supports motion estimation compression (h.263) for better compression of video sequences.
PDF to SWF Converter. Generates one frame per page. Enables fully formatted text, ::including tables and formulas, inside a Flash Movie. It is based on the xpdf PDF parser from ::Derek B. Noonburg.
Like JPEG2SWF, only for PNGs.
Allows to read out, optimize and readjust SWF bounding boxes.
SWF file creation from simple script files. Includes ActionScript 2.0/3,0 support.
Multi-function tool for SWF insertion into Wrapper SWFs, SWF concatenation, stacking, and basic parameter manipulation (e.g. size change ).
Prints out SWF information, i.e. images/fonts/sounds, contained code disassembly, cross-reference and bounding box data.
SWF element extraction: Movieclips, Sounds, Images, shapes, etc.
Bitmap rendering from swf files created with pdf2swf, jpeg2swf or png2swf.
Scans SWFs for text data.
WAV audio to SWF conversion.
Extra and/or adapted commands are available in the development versions and the Git repository. Detailed information is available on the SWFTools Documentation Wiki.
The SWFTools suite also includes a Python gFX API library, consisting of a PDF parser (based on xpdf) and a number of rendering back-ends. Using the API, one can extract text from PDF pages, create bitmaps from PDF, and convert PDF files to SWF. The latter functionality is similar to that offered by the standalone pdf2swf utility detailed above, but more powerful: the API can create individual SWF files from single PDF pages, or composite pages from different PDF files.