Adobe® Flash® CS4 Professional Bible
Table of Contents
Part I: An Introduction to Flash Web Production
Chapter 1: Understanding the Adobe Flash CS4 Blueprint
The Key Is Integration
The topography of Flash CS4
File types in Flash CS4
The Many Worlds of Flash CS4
Bitmap handler
Vector-based drawing program
Vector-based animator
Video engine
Audio player
Multimedia authoring program
Animation sequencer
Programming and database front end
Desktop application authoring program
Summary
Chapter 2: Exploring Web Technologies
Contextualizing Flash in the Internet Evolution
High expectations for Web experiences
To Flash or not to Flash?
Alternative methods of multimedia authoring
Exploring Companion Technologies
HTML is here to stay
Client-side scripting using JavaScript
The world of Web services
Adobe server technologies
Recognizing Project Potential
Linear presentations
Interactive presentations
Data-driven presentations
Data-driven applications (or Rich Internet Applications)
Summary
Chapter 3: Planning Flash Projects
Workflow Basics
Phase I: Establishing the concept and goals
Phase II: Producing, testing, and staging the presentation
Using the Project Panel in Flash CS4
1. Establishing a project structure
2. Creating the project in Flash CS4
3. Changing project and panel preferences
4. Opening and editing files in the project
5. Publishing the entire project
Summary
Part II: Mastering the Flash Environment
Chapter 4: Interface Fundamentals
Getting Started
Welcome to Flash CS4
Start Page
Help menu options
The Flash CS4 interface on Macintosh and Windows
What to expect from the Properties panel
Managing Windows and Panels
Contextual menus
Floating and docking panels
Focus: Making panels or windows active
Creating custom workspace layouts
Keyboard shortcuts
The Tools Panel
Controlling the Tools panel
Reading the Tools panel
Using Tool options
Customizing the Tools panel
The Document Window
Controlling the Document window
Reading the Document window
Using scenes
Using Document window menu options
Working with Flash templates
The Timeline Window
Controlling the Timeline window
Using the Timeline Controller toolbar
Reading the Timeline
Editing frames and layers
Using Frame View options
Printing
Summary
Chapter 5: Drawing in Flash
Using Geometric Shape Tools
The Oval tool
The Oval Primitive tool
The Rectangle tool and Rectangle Primitive tool
Join and Miter settings
The PolyStar tool
The Line tool
Using Drawing Tools
The Pencil tool
The Brush tool
The Eraser tool
Creating Precise Lines and Bezier Curveswith the Pen Tool
Using Fill and Stroke Controls
Choosing colors
Choosing line styles
Controlling Stroke Scale behavior
Optimizing Drawings
Putting Selection Tools to Work
The Selection tool
The Lasso tool
The Subselection tool
Designing and Aligning Elements
Simplifying snapping settings
Design panels
The Edit menu
Creating Patterns with Symbols Using the Spray Brush Tool and the Deco Tool
Applying random “ink” with the Spray Brush tool
Creating order and pattern with the Deco tool
Summary
Chapter 6: Symbols, Instances, and the Library
Understanding the Document Library
Working with Common Libraries and External Libraries
Working with multiple Document Libraries
Reading the Library panel
Organizing Library panels
Defining Content Types
Raw data
Drawing objects and shape primitives
Groups
Native symbols
Imported media elements
Editing Symbols
Modifying a symbol in Edit mode
Editing a symbol in a new window
Editing a symbol in place
Editing symbols from the Library
Returning to the Main Timeline or scene
Modifying Instance Properties
Applying basic color effects to symbol instances
Changing the symbol type of an instance
Swapping symbols
Building Nested Symbol Structures
Converting a raw shape into a Graphic symbol
Using Graphic symbols in a button
Animating Graphic symbols in a Movie Clip
Adding a Movie Clip to a Button symbol
Modifying a MovieClip instance
9-Slice Scaling for Movie Clip Backgrounds
Using the Movie Explorer
Filtering buttons
The display list
The Movie Explorer Options menu
The contextual menu
Using Authortime Shared Libraries
Summary
Chapter 7: Applying Color
Introducing Color Basics
Discussing Web-safe color issues
Using hexadecimal values
Using color effectively
Working in the Swatches Panel
Swatches panel options
Importing custom palettes
Using the Color Panel
Adjusting fill and stroke transparency
Working with gradient fills
Controlling gradient fill colors
Using alpha settings with gradients
Selecting bitmap fills
Working with Droppers, Paint Buckets, and Ink Bottles
Summary
Chapter 8: Working with Text
Considering Typography
Text Field Types in Flash
Static text boxes
Editable text fields: Dynamic and input
The Text Tool and the Properties Panel
Working with the Text tool
Setting text attributes in the Properties panel
Font Export and Display
Smoothing text with anti-alias settings
Rendering outlines with the Bitmap text setting
Understanding device fonts
Working with the Use Device Fonts setting
Troubleshooting font display
Controlling font substitution
Font Symbols and Shared Font Libraries
Creating a font symbol
Updating font symbols at authortime
Using font symbols in runtime shared libraries
Modifying Text
Editing text manually
Moving beyond the box with live filter effects
Summary
Chapter 9: Modifying Graphics
Sampling and Switching Fills and Strokes
The Eyedropper tool
The Ink Bottle tool
The Paint Bucket tool
Using the Paint Bucket Gap size option
Using the Paint Bucket Lock Fill option
Transforming Gradients and Bitmap Fills
Adjusting the center point with the Gradient Transform tool
Rotating a fill with the Gradient Transform tool
Adjusting scale with the Gradient Transform tool
Setting gradient fill overflow styles
Skewing a bitmap fill with the Gradient Transform tool
Gradient Transform Used for Lighting Effects
Applying Modify Shape Menu Commands
Convert Lines to Fills
Creating scalable artwork
Expand Fill
Soften Fill Edges
Free Transform Commands and Options
The Transform panel
The Modify Transform menu
The Free Transform tool
Transforming shapes, symbols, text, and groups
Manipulating Symbols in 3D Space
Controlling the camera view: Perspective and vanishing point
Transforming symbols with the 3D Rotation tool
Moving symbols with the 3D Translation tool
Modifying Item Types
Stacking order
Grouping
Applying Break apart
About the Magic Wand option
Tracing bitmaps
Working with Drawing Objects and Combine Object Commands
Working with Compound Shapes
Editing with Find and Replace
Using the History Panel
Replay Steps
Copy Steps
Clear History
History View
Save As Command
Summary
Part III: Creating Animation and Effects
Chapter 10: Animation Strategies
Establishing Ground Rules
Defining Variables
The environment
The materials
The motion
Adding Personality
Manipulating Perception and Illusion
Viewpoint, framing, and depth
Anticipation
Secondary motion
Understanding the Laws of Nature
Law #1: Inertia
Law #2: Acceleration
Law #3: Action/reaction force pairs
Summary
Chapter 11: Timeline Animation and the Motion Editor
Basic Methods of Flash Animation
Frame-by-Frame Animation
Adding keyframes
Creating frame-by-frame animation
Modifying Multiframe Sequences
Onion skinning
Editing multiple frames
Using Tweens for Animation
Shape tweening
Adding shape hints
Motion tweening
Modifying motion tween properties
Working with motion tween spans and layers
Editing motion paths
Adding control to animation along a motion path
Working with motion presets
Adjusting Easing and Tween Properties with the Motion Editor
Controlling property views in the Motion Editor
Editing tween curves and property key frames
Eases and custom eases
Animating 3D properties
Integrating Multiple Animation Sequences
Moving tweens onto symbol timelines
Organizing symbol instances on the Main Timeline
Reusing and Modifying Tweened Symbol Instances
Controlling symbol instances with ActionScript
Make Flash work for you
Summary
Chapter 12: Applying Filters, Blends, Guides, and Masks
Applying Filters in Flash
Adding and adjusting filters
Creating dimensional shadows
Combining filters and saving custom presets
Animating filters with motion tweens
Using the Motion Editor to control filter interpolation
Controlling Color: Properties versus Filters
Adjust Color filter
Color properties
Using advanced color effects: Understanding relative and absolute color settings
Layering Graphics with Blend Modes
Understanding blend modes
Applying basic blends
Applying compound blend modes: Alpha and Erase
Creating an animated Alpha blend
Working with Special Layer Types: Guides and Masks
Using guide layers
Adding masks
Masking with a filled shape
Masking with a group
Masking with a symbol instance
Masking text
Using Distribute to Layers
Summary
Chapter 13: Character Animation Techniques
Working with Large File Sizes
Storyboarding scenes and shots
Flash scenes and project files
Voices, sound effects, and ambient sound
Some Cartoon Animation Basics
Expressing motion and emotion
Anticipation
Weight
Overlapping actions
Blurring to simulate motion
Animator's Keys and Inbetweening
Walk cycles (or walk loops)
Repeaters
Types of walks
Coloring the Art
The model sheet
Gap problems
Speed coloring
Temporary backgrounds
Flash Tweening
Panning
Instance swapping
Motion guides
Lip-Syncing
Shape morphing is not for lip-syncing
Expression and lip-syncing
Lip-sync tricks
Syncing with music and sound effects
Backgrounds and Scenery
Runtime bitmap caching
Bitmaps
QuickTime limitations
Building layered backgrounds in Photoshop
Flash mask layers
Long pans
Multiplane pans
Blurring to simulate depth
Creating IK Armatures with the Bone Tool and Bind Tool
Finishing Up
Final output
Post production
Summary
Part IV: Integrating Media Files with Flash
Chapter 14: Adding Sound
Identifying Sound File Import and Export Formats
Import formats
Export formats
Importing Sounds into Flash
Assigning a Sound to a Button
Adding Sound to the Timeline
Organizing Sounds on the Timeline
Enhanced viewing of sound layers
Organizing sound layers with a layer folder
Synchronizing Audio to Animations
Event
Start
Stop
Stream
Stopping Sounds
Stopping an event sound
Stopping a single instance of a stream sound
Stopping all sounds
Editing Audio in Flash
Sound-editing controls
Applying effects from the Effect menu of the Properties panel
Sound Optimization Overview
Publish Settings for Audio
The Set options
Supporting audio and MP3 playback
Fine-Tuning Sound Settings in the Library
Settings for audio in the library
Combining methods for controlling sounds
Final Sound Advice and Pointers
VBR (Variable Bit Rate) MP3
Optimizing sounds for bandwidth usage
Extracting a sound from a Flash document
Summary
Chapter 15: Importing Artwork
Defining Vectors and Bitmaps
Knowing the File Formats for Import to Flash
Preparing Bitmaps
Preserving Bitmap Quality
Importing and Copying Bitmaps
Importing sequences
Working with layered bitmap files
Copying and pasting a bitmap into Flash
Applying color effects, alpha, and filters to bitmaps
Setting Bitmap Properties
Being prepared for common problems
Cross-browser consistency
Using the Bitmap Buttons in the Properties Panel
Swap
Edit
Making Sense of Bitmap Compression
24-bit or 32-bit lossless source files
8-bit lossless source files
Source files with lossy compression
Converting Rasters to Vectors
Using External Vector Graphics
Importing Vector Artwork
Copying and pasting a vector image into Flash
Importing Adobe Illustrator files
Optimizing Vectors
Interpreting complex vector artwork
Converting text to outlines
Optimizing curves
Runtime bitmap caching
Working with XFL: The Flash Format of the Future
Summary
Chapter 16: Displaying Video
Integrating Video: The Solutions
Loading a Flash Video file at runtime
Real-time streaming a Flash Video file at runtime
Embedding video into a Flash movie
Importing the Video
An overview of codec options
Compressing video with Adobe Media Encoder CS4
Using the Video Import wizard
Deploying video files with Flash CS4
Using the FLVPlayback Component (AS3)
Working with the Component parameters
Using FLVPlayback Custom UI components
Working with Cue Points
Working with Video Alpha Channels
Live action footage
Summary
Part V: Adding Basic Interactivity to Flash Movies
Chapter 17: Understanding Actions and Event Handlers
Actions and Event Handlers
What is ActionScript?
Navigating the Actions panel
A brief primer on code syntax
Your First Five Actions
gotoAndPlay() and gotoAndStop()
nextFrame() and prevFrame()
nextScene() and prevScene()
play() and stop()
navigateToURL()
Making Actions Happen with Event Handlers
Combining an action with an event handler to make a functioning button
The Flash event handlers
Creating Invisible Buttons and Using getURL
Summary
Chapter 18: Building Timelines and Interactions
A Brief History of Movie Clips: The Key to Self-Contained Playback
How Movie Clips interact within a Flash movie
One movie, several timelines
Targets and Paths Explained
Absolute paths
Relative paths
Targeting Movie Clips in Flash CS4
Summary
Chapter 19: Making Your First Flash CS4 Project
The Main Timeline as the Site Layout
Creating a plan
Setting up a local folder structure
Determining Flash movie properties
Mapping presentation areas to keyframes
Creating content for each area
Adding Navigation Elements to the Main Timeline
Creating text buttons for a menu
Browsing the video items
Text Scrolling with the TextArea Component
Using the Custom BlurFader Component
Making the Movie Accessible
Summary
Part VI: Distributing Flash Movies
Chapter 20: Publishing Flash Movies
Testing Flash Movies
Using the Test Scene or Test Movie command
Using the Bandwidth Profiler
Using the size report
Publishing Your Flash Movies
Publish Settings
Selecting formats
Using the Flash settings
Using the HTML settings
Using the GIF settings
Using the JPEG settings
Using the PNG settings
Creating Windows and Mac projectors
Publish Preview and Publish Commands
Using Publish Preview
Using Publish
Using Publish Profiles
Summary
Chapter 21: Integrating Flash Content with Web Pages
Writing Markup for Flash Movies
Using the <object> tag
Using the <embed> tag
Detecting the Flash Player
Plug-in versus ActiveX: Forcing content without a check
Detecting the Flash Player with Flash CS4
Detecting the Flash Player with SWFObject
Using Flash Movies with JavaScript and DHTML
A word of caution to Web developers
Understanding how Flash movies work with JavaScript
Changing HTML attributes
Adding a percentLoaded() method
Summary
Chapter 22: Using the Flash Player and Projector
Using the Stand-Alone Flash Player and Projector
Creating a projector
Distribution and licensing
Distribution on CD-ROM or DVD-ROM
Stand-Alone Limitations and Solutions
Using the Flash Player Plug-in for Web Browsers
Supported operating systems
Supported browsers
Plug-in and Flash movie distribution on the Web
Plug-in installation
Using the Settings in Flash Player 6 and Later
Privacy
Local Storage
Microphone
Camera
Player Utilities
Summary
Part VII: Approaching ActionScript
Chapter 23: Knowing the Nuts and Bolts of Code
Breaking Down the Interactive Process
Define your problems
Clarify the solution
Translate the solution into the interactive language
The Basic Context for Programming in Flash
Accessing ActionScript commands
Actions list organization in the Actions panel
The Help documentation
ActionScript 1.0 and 2.0
One Part of the Sum: ActionScript Variables
String literals
Expressions
Variables as declarations
Declaring Variables in ActionScript
Using actions to define variables
Loading variables from a predefined source
Establishing variables with HTML
Creating Expressions in ActionScript
Operators
Checking conditions: if . . . else actions
Branching conditions with switch() and case
Loops
Properties
Built-in functions
Creating and calling subroutines
Creating a Login Sequence with Variables
Summary
Chapter 24: Controlling Movie Clips
Movie Clips: The Object Overview
Movie Clip properties
Movie Clip methods
Event listener methods: The flexible Movie Clip handler
Other classes and functions that use the MovieClip object
Working with Movie Clip Properties
Positioning Movie Clips
Scaling Movie Clips
Rotating Movie Clip instances
Creating Draggable Movie Clips
Drag-and-drop basics
Detecting the drop position: Using dropTarget
Making alpha, scale, and blur sliders
Summary
Chapter 25: Using Functions and Arrays
What Are Data Types?
String
Number
Boolean
Object
Function
Undefined
Checking data types with typeof
Checking class type in ActionScript 3.0
Overview of Functions as Procedures
What functions do
When to create a function
How to define a function
How to execute a function
Managing Related Data: The Array Class
Creating a Dynamic Reusable Flash Menu
Summary
Chapter 26: Interacting with Movie Clips
Movie Clip Collision Detection
Using dropTarget
Collision detection with hitTestObject() and hitTestPoint()
Using the Mouse Class
Manipulating Color Attributes
Creating a ColorTransform object
Setting multiplier and offset values
Enabling Sound with ActionScript
Creating sounds with ActionScript
Creating a SoundTransform object
Creating volume and balance sliders for sounds
Printing with ActionScript
Summary
Part VIII: Applying ActionScript
Chapter 27: Animating with ActionScript
Reviewing the Tween Parameters
Making an Object Move Back and Forth
Animating 3D Properties
Following the Mouse Cursor
Summary
Chapter 28: Sharing and Loading Assets
Managing Smooth Movie Download and Display
Preloading a Flash Movie
Loading Flash Movies
Basic overview of Flash site architecture
Loading an external .swf file into a movie
How Flash handles loaded movies of differing dimensions
Placing, scaling, and rotating externally loaded Flash movies
Loading Images into Flash Movies
Loading MP3 Audio into Flash Movies
Loading a Flash Video into a Flash Movie
Displaying a Flash Video at Its Native Size
Adjusting video size with metadata
Setting the video size without metadata
Accessing Items in Shared Libraries
Setting up a shared library file
Specifying the shared library's location
Publishing the shared library movie file
Linking to assets from other movies
Updating shared assets
Summary
Chapter 29: Sending Data In and Out of Flash
Using Text Fields to Store and Display Data
Input text fields
Dynamic text fields
Defining a Data Process with States
Input state
Send state
Wait state
Output state
Creating a User Comment Form
Using XML Data in Flash Movies
Understanding XML
Loading an XML document into a Flash movie
Summary
Chapter 30: Applying HTML and Text Field Formatting
Exploring HTML Usage in Text Fields
Supported HTML tags
Formatting text with the Properties panel
Inserting HTML tags into text fields with ActionScript
Formatting fields with the TextFormat object
Applying style sheets to text fields
Inserting images into text fields
Using the TextEvent.LINK event with anchor tags
Controlling Text Field Properties
Scroll properties
Text rendering properties
Pixel-based Text Scrolling with Movie Clips
Summary
Chapter 31: Creating a Game in Flash
The Game Plan: Four Phases of Game Design
Game design
Interaction design
Visual and sound design
Scripting
Building the Project
Scripting the Game
Initializing the Game
Main Timeline and Document Class overview
The Hangman.as document class
The shared font layer
The placeholder GameView instance
Building the Interface
Creating text fields
Creating the alphabet
Starting the Game
Display the letters of the alphabet
Choose a random word
Create the letters of the displayed word
The User Input
Interpreting the User Input
Was the letter selected before?
Is the letter part of the word?
Checking the Status of the Game
Is the word complete?
Is the hangman complete?
Are there more words to guess?
How do you end the round?
Removing the hangman
Reset the game or just the round?
Added Feature: Storing User and Game Information
Summary
Chapter 32: Using Components
What Are Components?
Why Use Components?
Compiled Clips: A Specific Component Format
How to Add a Component
Where to Find Components, Assets, and Parameters
Components panel
Component Inspector panel
Library panel
Actions panel and ActionScript
Modifying Component Color Properties and Parameters
Removing Components from Your Movie
Components in Flash CS4
Button component
CheckBox component
ComboBox component
List component
RadioButton component
ScrollPane component
TextArea component
UIScrollBar component
Understanding the Listener Event Model for Components
What a typical listener looks like
Letting the component know who its listeners are
Using Components in Your Movie
Modifying Components
Global style formats
Changing styles for a component class
Changing styles for individual instances
Using Embedded Fonts with Components
Modifying AS3 Component Skins
Using the UILoader and ProgressBar Components
Adding a UILoader component to your Flash movie
Applying the ProgressBar component
Custom Components
Live preview
Exchanging and acquiring components
Summary
Chapter 33: Building an Image Gallery Component
Creating a Plan
Describing the feature set
Determining the server-side scripting requirements
Phase 1: Setting Up the Gallery Class
Reviewing the starter files
Constructing the Gallery component
Phase 2: Loading Thumbnails into the ScrollPane
Uploading scripts and images to your Web server
Building data properties for the Gallery class
Architecting the Thumbnail class
Creating thumbnail holders in the Gallery class
Phase 3: Displaying the Full-Size JPEG Image
Loading the full-size image
Updating the scroll bar and auto-loading the first image
Phase 4: Enhancing the Thumbnail and Image States
Tracking the selected thumbnail
Framing the selected thumbnail with the BevelFilter class
Creating a loading transition with the BitmapData and BlurFilter classes
Transitioning thumbnail states with the Tween and ColorMatrixFilter classes
Setting the image caption
Completing the thumbnail button handlers
Building a right-click download menu item for the full-size JPEG
Phase 5: Finalizing the Component
Copying existing component class files
Adding the component definition
Changing script paths for final deployment
Summary
Part IX: Appendixes
Appendix A: Using the CD-ROM
Appendix B: Guest Experts' Information
Appendix C: Digital Audio Basics
What is sound?
What affects the quality and size of sound files?
Appendix D: Digital Video Basics
Source format
Image quality
Sound quality
Subject matter
Adobe® Flash® CS4 Professional Bible
Adobe® Flash® CS4 Professional Bible
Published by:
Wiley Publishing, Inc.
111 River St.Hoboken
NJ 07030-5774
www.wiley.com
Copyright © 2009 by Wiley Publishing, Inc., Indianapolis, Indiana
ISBN: 978-0-470-37918-9
Manufactured in the United States of America
10 9 8 7 6 5 4 3 2 1
Published by Wiley Publishing, Inc., Indianapolis, IndianaPublished simultaneously in Canada
No part of this publication may be reproduced, stored in a retrieval system or transmitted in any form or by any means, electronic, mechanical, photocopying, recording, scanning or otherwise, except as permitted under Sections 107 or 108 of the 1976 United States Copyright Act, without either the prior written permission of the Publisher, or authorization through payment of the appropriate per-copy fee to the Copyright Clearance Center, 222 Rosewood Drive, Danvers, MA 01923, (978) 750-8400, fax (978) 646-8600. Requests to the Publisher for permission should be addressed to the Permissions Department, John Wiley & Sons, Inc., 111 River Street, Hoboken, NJ 07030, (201) 748-6011, fax (201) 748-6008, or online at www.wiley.com/go/permissions.
Limit of Liability/Disclaimer of Warranty: THE PUBLISHER AND THE AUTHOR MAKE NO REPRESENTATIONS OR WARRANTIES WITH RESPECT TO THE ACCURACY OR COMPLETENESS OF THE CONTENTS OF THIS WORK AND SPECIFICALLY DISCLAIM ALL WARRANTIES, INCLUDING WITHOUT LIMITATION WARRANTIES OF FITNESS FOR A PARTICULAR PURPOSE. NO WARRANTY MAY BE CREATED OR EXTENDED BY SALES OR PROMOTIONAL MATERIALS. THE ADVICE AND STRATEGIES CONTAINED HEREIN MAY NOT BE SUITABLE FOR EVERY SITUATION. THIS WORK IS SOLD WITH THE UNDERSTANDING THAT THE PUBLISHER IS NOT ENGAGED IN RENDERING LEGAL, ACCOUNTING, OR OTHER PROFESSIONAL SERVICES. IF PROFESSIONAL ASSISTANCE IS REQUIRED, THE SERVICES OF A COMPETENT PROFESSIONAL PERSON SHOULD BE SOUGHT. NEITHER THE PUBLISHER NOR THE AUTHOR SHALL BE LIABLE FOR DAMAGES ARISING HEREFROM. THE FACT THAT AN ORGANIZATION OR WEBSITE IS REFERRED TO IN THIS WORK AS A CITATION AND/OR A POTENTIAL SOURCE OF FURTHER INFORMATION DOES NOT MEAN THAT THE AUTHOR OR THE PUBLISHER ENDORSES THE INFORMATION THE ORGANIZATION OR wEBSITE MAY PROVIDE OR RECOMMENDATIONS IT MAY MAKE. FURTHER, READERS SHOULD BE AWARE THAT INTERNET WEBSITES LISTED IN THIS WORK MAY HAVE CHANGED OR DISAPPEARED BETWEEN WHEN THIS WORK WAS WRITTEN AND WHEN IT IS READ.
For general information on our other products and services or to obtain technical support, please contact our Customer Care Department within the U.S. at 877-762-2974, outside the U.S. at 317-572-3993 or fax 317-572-4002.
Wiley also publishes its books in a variety of electronic formats. Some content that appears in print may not be available in electronic books.
Library of Congress Cataloging-in-Publication Data: 2008942706
Trademarks: Wiley, the Wiley logo, and related trade dress are trademarks or registered trademarks of John Wiley & Sons, Inc. and/or its affiliates, in the United States and other countries, and may not be used without written permission. Adobe and Flash are registered trademarks of Adobe Systems Incorporated in the United States and/or other countries. All other trademarks are property of their respective owners. Wiley Publishing, Inc. is not associated with any product or vendor mentioned in this book.
About the Authors
After discovering Flash while working on an art project, Robert soon realized that there was a need for more comprehensive documentation of its capabilities. In 1998 not many people had even heard of Flash and publishers were wary of the limited market, but IDG Books Worldwide, Inc. (now Wiley Publishing, Inc.) committed to doing the Flash 4 Bible. The rest, as they say, is history. After studying and working together in Toronto for five years, Robert Reinhardt and Snow Dowd established a multimedia consulting and design company in Los Angeles in 1999 called [the MAKERS]. Five years in the Hollywood Hills saw them through the dotcom boom and bust and gave them the chance to work on a wide range of projects — without ever having to wear wool socks. Now based in Portland, Oregon, [the MAKERS] continue to do work for entertainment companies, educational institutions, entrepreneurs, independent artists, and nonprofit organizations — and enjoy wearing stylish rain boots. Snow and Robert have expanded their services by working with DesignProVideo.com to produce Flash training videos.
Robert Reinhardt — With a degree in photographic arts, Robert takes a holistic approach to the creation of compelling multimedia. For five years, Robert oversaw the growth of the Multimedia Platforms Group at Schematic, a worldwide interactive agency. There, he led various assignments including multimedia data analysis applications for Nielsen's Media and Entertainment division and created interactive applications for The Weather Channel's WeatherClassroom.com, DC Comics, and Microsoft Windows XP Media Center Edition spotlights for major cable networks. Robert now consults and trains a wide range of clients, from Adobe Systems to the Walt Disney Internet Group to UCLA's Center for International Emergency Medicine.
When he isn't building or consulting on Flash projects, Robert loves to teach and write about Flash and rich media technologies. In addition to this book, he is the coauthor of Flash MX 2004 ActionScript Bible (Wiley, 2004). He has developed and taught Flash workshops for Lynda.com, Art Center College of Design, and Portland State University, as well as conducted on-site training and seminars for clients in the United States and Canada such as LodgeNet, Wieden+Kennedy, and Scripps Networks. Robert has been a regular featured speaker at the Flashforward, FITC, Flashbelt, and SIGGRAPH conferences. Robert is also a writing partner for CommunityMX.com.
Snow Dowd — Snow initially collaborated with Robert Reinhardt on multimedia, film, and photography-based installation projects while earning a BFA in Image Arts and New Media at Ryerson University. During this time, she was also the production manager for Design Archive, one of Canada's preeminent architectural photography studios. Working with renowned photographers and an exacting international client base of architects and designers helped her gain a deeper appreciation for images, architecture, and industrial design.
Fully immersed in digital production since 1998, Snow is able to synthesize her background in visual arts and communication theory with an ever-evolving software toolkit. Focusing on content architecture and interface design, Snow strives to create print and Web projects that are beautiful, functional, and memorable. Snow was honored to be featured in the June 2005 spotlight on FlashGoddess.com — a great place to go if you've been wondering where all the women are in the Flash world.
About the Technical Editor
Jeremy Petty — Jeremy is a design engineer based in Portland, Oregon. His work has ranged from developing electro-mechanical systems used in a miniature TOF-mass spectrometer to designing tools sets for the sports apparel industry. For fun, he enjoys bicycling around the Portland area, searching for the prefect surface to longboard on, and spending time with his family.
Credits
Acquisitions Editors
Laura SiniseAaron Black
Project Editor
Katharine Dvorak
Technical Editor
Jeremy Petty
Copy Editor
Scott Tullis
Editorial Manager
Robyn Siesky
Business Manager
Amy Knies
Senior Marketing Manager
Sandy Smith
Vice President and Executive Group Publisher
Richard Swadley
Vice President and Executive Publisher
Barry Pruett
Project Coordinator
Patrick Redmond
Graphics and Production Specialists
Stacie BrooksAndrea HornbergerJennifer MayberrySarah Philippart
Quality Control Technicians
Amanda Graham
Jessica Kramer
Proofreader
Bonnie Mikkelson
Indexer
Christine Spina Karpeles
Media Development Project Manager
Laura Moss
Media Development Assistant Project Manager
Jenny Swisher
Media Development Associate Producer
Kit Malone