The Format and Function of SWF Files

Like PNG or MNG, SWF is a binary tagged file format. Each movie begins with a header that encodes most of the global information that a player needs to play back the file, such as the frame rate, the dimensions of the movie, etc. The header is followed by one or more tags, and finally by a single end tag. Tags are one of two types: definition tags or control tags.

As the player software (typically a browser plug-in) reads the definition tags, the objects that they describe are placed in a structure called the Dictionary. Control tags add and remove the objects from a structure called the display list, which represents the layers of the movie.

Definition Tags

A definition tag describes a reusable object that is to appear in the movie. Each of these objects has a unique ID associated with it that identifies it as a character in the movie. Control tags (or other definition tags) that appear after a character has been defined can refer to that character by its ID. The defined object can be a shape, a sound, a button, or any of the other types of objects listed below. Almost all of the elements of an SWF file have a full alpha channel, allowing you to control the transparency of any objects placed in the movie.

Shapes

A shape is defined by one of three tags: DefineShape, DefineShape2, or DefineShape3. The latter two tags are variations of the DefineShape tag that were introduced in successive revisions of the SWF specification (several tags have multiple ...

Get Perl Graphics Programming now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.