Chapter 2. Exploring Web Technologies

IN THIS CHAPTER

  • Using Flash for Web deployment

  • Understanding the limitations of Flash

  • Looking at competing technologies

  • Preparing to develop Flash content

Over the years, many technologies have been developed to work in conjunction with Adobe Flash. Understanding the process of integrating these technologies will no doubt enable you to create more interactive and complex productions. If you're new to Flash, or you're looking for new ways to enhance or broaden the vision or scope of your Flash productions, you'll benefit from reading this chapter. It explores the placement of Flash within an ever-growing toolset for universal and "standards-based" Web development in use today.

Contextualizing Flash in the Internet Evolution

If you follow the development of "bleeding-edge" technology, you may have noticed how often software is created, updated, and made obsolete. At times, this cycle seems to happen almost on a daily basis. But exactly how many practical — and affordable — options exist for Web development? How can production teams develop consistent frameworks with a variety of server technologies to efficiently build Flash presentations and applications? In this section, I discuss how Flash CS5 continues to push the direction and limits of the Internet.

High expectations for Web experiences

Despite the devastation to Web production brought about by the "dotbomb" era (that is, the economic recession that occurred after many dotcom companies went out of business around the year 2000), the Internet economy has rebounded tremendously. People visiting your Web sites or using your Web-based applications expect to experience engaging interfaces with amazing graphics and sound. Clients who hire you expect that you can produce this type of material. Clients may also believe that everyone will be able to visit the site and download material instantaneously (regardless of connection speed limitations), and that every visitor will have the same experience. Before you consider whether Flash is the best tool to meet your clients' goals, let's step back for a moment and consider Flash's history.

With every release of a new version of the Flash Player, Web developers have access to bigger and better capabilities. I've seen a vast evolution from the early days in 1997 of mere vector animations, which were vastly smaller in file size compared to standard GIF animations. In 1998, Flash Player 3 made a marked improvement by introducing more control over these animations. At that time, Web sites with small games started to arrive on the development scene. That was also the year when Macromedia Generator was introduced, enabling dynamic graphics and data for Flash movies. Many companies were apprehensive about investing in Flash development because Flash was relatively new, although it was gaining ground as an accepted form of Web delivery.

In 1999, when Flash Player 4 was introduced, this attitude changed a great deal. The new version was much more powerful and could accomplish many of the tasks that Generator provided in the past. Database interaction and dynamic content were suddenly possible in real time. However, Flash 4 was still a difficult application for developers to use; the programming interface for ActionScript code was limited by drag-and-drop functionality (which was avoidable only by using third-party software). This problem no longer existed in the 2000 release of Flash 5. Flash Player 5 could load XML data at runtime, and ActionScript "grew up" to come a bit closer to an object-oriented programming (OOP) language that strongly resembled JavaScript.

In 2002, Web designers and developers were handed the sixth version of Flash, dubbed "MX." Flash MX marked Macromedia's success at integrating all of their software products into a universal framework, where ColdFusion, Dreamweaver, Fireworks, Director, and FreeHand could all be used together to produce a new breed of Web experiences, including Rich Internet Applications. With the new software and player, XML data was processed remarkably faster, movies were made accessible to those with physical challenges, and Macromedia Generator was no longer necessary to incorporate dynamic graphics. Flash Player 6 could load JPEG and MP3 files at runtime. Developers could create reusable components that greatly decreased development time. Also, Flash Player 6 introduced support for video playback. Flash movies also became more browser friendly with named anchors that enabled specific sections of Flash movies to be bookmarked. ActionScript continued its development into more of a "real" programming language, as more objects and event handling were exposed in application programming interfaces (APIs). Perhaps most important, Flash Player 6 could integrate with new data transfer methods made available by Flash Remoting MX, which enabled serialized data to move more efficiently from application servers (such as ColdFusion MX) to Flash movies. Flash Communication Server MX 1.0 and 1.5, released shortly after Flash MX, enabled Flash movies to synchronize live data among several connected users simultaneously — developers could create live chat rooms, multiplayer games, and shared whiteboards, just to name a few applications. Flash Communication Server also added the capability to stream live or prerecorded audio/video streams to Flash Player 6.

Note

Flash Communication Server is now split into two different products: Adobe Flash Media Server and Adobe Flash Media Interactive Server.

Flash Player 7 was overwhelmingly optimized for speed. Everything from video playback to text rendering to ActionScript performance was vastly improved over Flash Player 6. This feature alone encouraged business clients and Web surfers alike to adopt the new player version; everyone loves faster performance. Of course, there was a whole lot more to Flash Player 7. It enabled you to customize the contextual menu (that is, the right-click menu) that Flash movies running in the player display, and, by default, HTML hyperlinks within Flash text supported Open in New Window and Copy Link options in the contextual menu. On the Windows platform, mouse wheel scrolling was now supported for internal Flash elements. Small text sizes could be rendered more cleanly (or crisply). JPEG or SWF content could be loaded and displayed inline with Flash text. Style sheets and CSS files added new formatting options to Flash text, enabling you to share styles from DHTML documents with your Flash content. Video lovers were enticed by the capability to load Flash Video files (.flv) directly into Flash movies, without the use of Flash Communication Server MX. Printing control was far superior in Flash Player 7 and ActionScript with the PrintJob API. Flash MX's UI components had been completely revamped and released as V2 components, and Flash MX Pro 2004 Pro could use Data and Streaming Media components.

A seismic shift for the Flash platform occurred with the release of Flash Player 8. This player further improved text rendering capabilities with the new FlashType engine. Now you could pull off 8-point type without resorting to a limited range of pixel-based fonts. The new filter and blend modes revolutionized the visual expressiveness of Flash user interfaces and animated content. The amazing On2 VP6 video codec pushed more and more Windows Media, QuickTime, and RealOne media producers over to Flash Video. Sites like ABC.com and MTV.com migrated nearly all of their Web video offerings over to Flash Video. The expanded image file support for runtime loading in ActionScript left no excuses for building your own image management utilities in Flash — with Flash Player 8 you could load PNG, JPEG, progressive JPEG, and GIF images into the Flash movie.

When Flash Player 9 was released in 2006, Adobe, fresh after the acquisition of Macromedia, built Adobe Flex Builder 2, which opened the Flash platform to many programmers who didn't want to learn a designer-centric tool like Flash. Flash Player 9 offered a brand-new ActionScript Virtual Machine, or AVM, to process more complex ActionScript code. This new code base was dubbed ActionScript 3.0. Flash Player 9 had two AVMs, one for earlier ActionScript (1.0 and 2.0) and one for the brand-new ActionScript language (3.0). Shortly after Flex Builder 2 was released, Adobe's teams developed consistent user interfaces (UIs) for the flagship products. Adobe also continued Macromedia's commitment to pushing the Web to a new definition of excellence by offering Flash developers a wide range of tools to build incredibly powerful applications. Both Flex Builder 2 and Flash CS3 could use the strength of ActionScript 3.0 to build high-end Web applications. Flash Player 9 also enabled Flash content to go full screen and be viewed out of the browser window. Want to make that Flash Video clip go full screen? No problem! Flash Player 9 Update 3 extended video support by adding the popular AVC/H.264 video codec as well as its companion AAC audio codec for incredible video and audio quality that's compatible with other major video plug-ins such as Apple QuickTime Player. This update also provided cacheable runtime shared libraries for Flex 3 projects, enabling fast loading and initialization of rich Internet applications (RIAs) built in Flex Builder 3.

Between Flash Player 9 and the release of Flash Player 10, Adobe released a new desktop platform based on Flash, HTML, and PDF technologies called Adobe AIR, or Adobe Integrated Runtime. This new platform enabled Flex developers to build Flash content that ran natively on the desktop computer, outside of a Web browser. AIR applications behave just like other installed applications, having access to system resources and local storage. You can do things like drag and drop files from the desktop to interactive elements within your AIR application!

Now, Adobe has created the tenth major release of the Flash Player: Flash Player 10. As discussed in Chapter 1, Flash Player 10 extends three-dimensional (3-D) support to all 2-D objects you can create with Flash drawing tools. Real-time streaming protocols for audio and video have been updated to improve quality of service during playback. Hardware acceleration available in newer computer and video card processors can be leveraged in Flash Player 10 to increase the speed at which graphics are composited on the screen, especially with full-screen video. Hydra, a scripting language for custom filter effects, has been added to Flash Player 10, enabling you to build your own filters that work not only in Flash movies but also in After Effects projects as well!

When Flash 5 was released, Flash was undoubtedly the key for Web branding, and it seemed as though every company wanted Flash content on its Web site. Flash has continued to enjoy this popularity, despite opponents calling the technology "unusable" or not compliant with Web standards. You could almost compare the introduction of Flash to that of the color television. It's difficult to return to largely static HTML pages after seeing the interactivity, animation, eye candy, and innovation that Flash sites offer to Web surfers — even those on slow connections or portable devices. Because of Adobe's efforts to keep the file size of the Flash Player smaller than most browser plug-ins, and the fact that it has been preinstalled on most systems for some time now, Flash remains a widely accessible and acceptable technology for Web deployment.

To Flash or not to Flash?

One of the crucial tasks of a Web designer or developer's job is to decide if Flash is the most appropriate tool to achieve the goals of a given project. Consider why you want — or need — to employ Flash in your work, because there are occasions when it may not be the best choice. It may not be wise to use this technology merely because it is "the thing to do" or is "cool." If you're pitching Flash projects to clients, it's a good idea to be prepared with reasons why Flash is the best tool to use to get the job done. Later in this chapter, I consider the benefits of other technologies, but for now consider what Flash can (and cannot) offer your projects.

An effective use of Flash

With the Flash CS5 authoring tool, you can create a wide range of presentation material or develop fully functional applications that run in a Web browser or on handheld devices:

  • Flash can generate very small file sizes while producing high-quality animation with optimal sound reproduction. Even companies making world-renowned cartoons, such as Disney, use Flash for some of their work. Because of their small file sizes, Flash movies (such as cards or announcements) can even be sent via e-mail.

  • Nearly any multimedia file format can be integrated into Flash. Vector images (such as EPS, FreeHand, Illustrator, and PDF files), bitmaps (GIF, PCT, TIFF, PNG, and JPEG), sound files (such as WAV, AIF, or MP3), and video (such as AVI and MOV) are all importable into your movies. Plug-in technology or third-party software is not required (although it does exist) to accomplish these imports. Nor is it required to play back your movies in Flash Player 10. Significant editing advantages sometimes exist when using imported files, such as symbol and layer formatting from FreeHand and Fireworks files. These features can be beneficial if you will be working with a client's raw resources.

  • Precise layouts with embedded fonts are possible with Flash. Formatting is usually inconsistent when you use HTML to describe page layouts, and formatting can easily vary from one browser to the next. You can be confident your movies will be formatted and displayed consistently when viewed with the Flash Player.

Tip

Flash Player 8 and later add support for crisp-looking text at small point sizes. In previous versions of Flash, most embedded fonts did not display legibly at these sizes. You have precise control over how fonts render at small point sizes.

  • Text, movies, images, and sound files can be displayed in your movie from a remote data source. You can incorporate dynamic content into your movie as long as the data source (such as a database or XML file) can be accessed from your host Web server or application server. Flash Player 7 or later can consume Web services directly, allowing you to build B2B (business to business) applications that take advantage of public or private data sources, such as weather reports and stock information.

  • Just as you can receive information from a database in your movie, you can send data from your movie to the database. Flash movies can accept user input and send the data to a server. Built-in components make it easier and faster than ever before to build interactive elements that do not require an advanced knowledge of ActionScript. Your forms have the potential to be much more engaging with animation or sound additions. You can also use this technology to track user progression throughout your site and send the information to a database.

  • With the proper server-side software, you can produce multiuser interactivity. Since Flash Player 5, you have been able to use XML sockets for transmission of data between a socket server and one or more connected Flash movies. XML operates much faster when using Flash Player 6 and later. Also, with the release of Flash Communication Server MX (now Adobe Flash Media Interactive Server), developers now have a consistent API to create multiuser applications. Remote Shared Objects, one of the mechanisms employed by Adobe Flash Media Interactive Server, use an efficient and optimized binary protocol, Real-Time Messaging Protocol (RTMP), to broadcast data updates.

  • A wide range of external runtime assets can be loaded into a Flash movie. You can create a master Flash movie and then load external files into it for each individual area of the interface or presentation. Using this method of asset management enables you to delegate tasks in a team production environment, where several designers and developers can work simultaneously. This workflow also enables you to create byte-optimized large Web sites and applications, in which assets are downloaded on an "as needed" basis while the user interacts with the Flash movie. External assets include all image formats supported by today's Web browsers, including standard and progressive JPEG files, GIF files, and PNG files. You can load MP3 and AAC audio files, as well as FLV or H.264-encoded video content. While image assets are always progressively downloaded, audio and video assets can be streamed in real time.

Note

A progressive download is any file type that can be used before the Flash Player actually receives the entire file. Progressive downloads are usually cached by the Web browser. You can stream MP3 files with the use of Adobe Flash Media Server or Adobe Flash Media Interactive Server. This server uses true streaming of all audio and video content, where nothing is cached by the Flash Player or the Web browser.

  • Creating components in Flash CS5 enables developers to form reusable template interfaces or assets for Flash movies. The components that ship with Flash CS5 greatly reduce the development time of interfaces that require common UI elements such as text input areas and radio buttons. Components can be easily customized in the Properties panel, and many settings can be changed without the use of ActionScript.

Note

Many of the components that ship with Flash CS5 use the .swc file format in Flash documents. Components can be precompiled, which means that you cannot edit their internal elements or code unless you have access to the original source .fla file used to create them.

  • The Flash Player is available on many different platforms and devices, including Windows, Macintosh, Solaris, Linux, OS/2, SGI IRIX, Pocket PC, and many mobile devices. Refer to www.adobe.com/shockwave/download/alternates for the latest version available for these and other alternative platforms. Just about any Web user can view Flash content by downloading and installing the latest version of the Flash Player.

  • Movies can be developed to run outside of the browser environment. Projectors are Flash movies running from an embedded player, so you do not need a browser to view or use them. They can be burned onto DVDs or CD-ROMs, or saved to any other media-storage device. You can also use the new Adobe AIR framework to deploy Flash content as an installed application on the user's computer.

  • Like HTML pages, content from Flash movies can be sent to a printer. The PrintJob API in Flash Player 7 or later ActionScript language offers you the capability to precisely control the layout of the printed page. The quality of the printed artwork and text from Flash movies is remarkable. You can send multiple pages to the printer at once and create content on-the-fly for the printed output.

These are only some of the things that Flash movies can do. Regardless of the intent of your production, verifying the use of this software is usually a good idea during preproduction. In the following subsection, I consider situations in which you may not want to use Flash to develop your content.

When not to use Flash

If you're enthusiastic about Flash and have used Flash for previous Web projects, you can easily develop a bias in favor of Flash. It may even be hard to consider that other options could be better for development. Knowing which technology is best for each solution will assist you in offering the best-quality products to your clients.

  • Flash movies play in a Web browser, using a plug-in. Despite the near ubiquity of the Flash Player, there are still some users who may need to download it. If you're using Flash CS5 to create Flash Player 10 movies, many visitors trying to view your site may need to update their players. It is also important to keep in mind that some workplaces or institutions (such as schools) will not allow their workers or students to install applications that include plug-ins and ActiveX controls on the systems. Further, with the increase of mobile device Web browsing, people are becoming increasingly likely to visit your Web site on a smartphone or other Web-enabled device — many of which support only Flash Lite or no Flash Player at all (the iPhone, for example, cannot play browser-based Flash content).

  • The type and version of a Web browser can affect the functionality of a Flash movie. Although internal ActionScript code should largely remain unaffected by browser brand and version, some scripting and interactivity with HTML documents (using JavaScript or VBScript) may be browser dependent.

Tip

Later releases of Flash Player 6 and all subsequent releases of the Flash Player now support the WMODE (Window Mode) parameter of Flash content across most browsers — previously, this parameter was supported only by Internet Explorer on Windows. If you've ever seen transparent-background Flash ads that whiz across the browser window, then you're already familiar with the use of the WMODE parameter.

  • Web browsers do not automatically redirect to alternative content if the Flash Player is not installed. You, as a developer, are required to create detection mechanisms for the Flash Player.

  • 3-D file formats cannot be directly imported or displayed in Flash movies. To achieve 3-D-style effects, frame-by-frame animation or ActionScript is required. Adobe Director, however, has built-in features for importing, creating, and manipulating 3-D content.

Tip

You can use the Papervision 3-D framework to load and display 3-D objects in a Flash movie. For more information, visit the Papervision 3-D Web site at www.papervision3d.org. Also, in Chapter 16, "Displaying Video," you learn how a video of a 3D model can be used for 3D-like effects in a Flash Video.

  • Typical search engines (or spiders) have a difficult time indexing the content of Flash movies. When you make Flash-based sites, you should create some alternative HTML content that can be indexed by search engines. If you simply place Flash movies in an otherwise empty HTML document, your Web site will not likely be indexed.

Tip

Flash CS5 can add XMP (eXtensible Metadata Platform) data to SWF files. Search engines can index this metadata to provide better placement of your Flash content within search results. Go to the Publish Settings dialog box (File

When not to use Flash
  • Flash sites were never meant to completely replace text-based HTML sites. For sites largely based on textual information with basic or simple graphics, there may be little point to using Flash. Selecting and printing text content from Flash movies is not always as intuitive as that of standard HTML sites. At this time, the Accessibility features of Flash Player 6 and later are supported only by Internet Explorer for Windows when used in conjunction with a select number of screen readers. A greater number of assistive technologies, however, support HTML pages.

Tip

You can add right-click menu support to HTML-styled text containing URL links. For example, this feature of Flash Player 7 and later movies enables a user to open a link in a new browser window.

  • In many circumstances, HTML is quicker, easier, and cheaper to develop than Flash content. There are many established applications supporting HTML development, and clients can tap an ever-increasing designer and developer base for cheaper and competitive pricing.

Of course, there are always exceptions to any rule, and these suggestions should be considered as guidelines or cautions to be examined before you embark on any Flash development. In the following subsection, you examine other tools used to create multimedia content.

Alternative methods of multimedia authoring

Now let's focus on Flash's competition in the multimedia authoring arena. This section is not intended to give you a comprehensive background on these technologies. Rather, I seek simply to give you some context of Flash as it exists in the rest of the multimedia world.

Dynamic HTML

Dynamic HTML (DHTML) is a specialized set of markup tags that tap into an extended document object model (DOM) that version 4 browsers or later can use. Using <layer> or <div> tags, you can create animations and interactive effects with Web-authoring tools ranging from Notepad or TextEdit to Adobe Dreamweaver. You can actually combine Flash content with DHTML to create Flash layers on top of other HTML content. One problem with DHTML is that Mozilla-based browsers and Internet Explorer on Windows do not use it in the same way, but this problem is becoming more marginal as new versions of these browsers are released. Usually, you need to make sure that you have a specialized set of code (or minor modifications) for each browser type.

Tip

Flash Player 7 and later movies support the use of cascading style sheets (CSS) to share formatting specifications from DHTML pages with Flash text fields.

XML and XSL

XML stands for eXtensible Markup Language. XML looks like HTML, but it's really a language that can manage structured or related data, such as pricing information, contact information, or anything else that you would store in a database. XSL stands for eXtensible Stylesheet Language. XSL documents apply formatting rules to XML documents. Together, XML and XSL documents can create interactive data-driven Web sites. Although most browsers in use today can read and display XML and XSL documents, some older browsers do not support these formats. The Flash Player can be installed on just about every graphical Web browser available, regardless of the browser's version. As such, you can potentially reach more users with Flash content than you can with XML and XSL content. As you see later in this chapter, XML can also be used to supply data to Flash.

Adobe Director

Originally, Macromedia's flagship product, Director, was the multimedia powerhouse authoring solution. Since its inception in the 1980s, Director has had the benefit of many years to establish its mature interface and development environment. Director can integrate and control many media types, including video, audio, and entire Flash movies. Director also has an Xtra plug-in architecture, which enables third-party developers to expand or enhance Director's capabilities. For example, you can use an Xtra plug-in to tap hardware-specific input and output, such as a motion detector or pressure-sensitive plate connected to the computer's serial port. Director 8.5 and later have added true 3-D modeling support. You can create Shockwave games with textured models and lighting effects! However, there are two major drawbacks to Shockwave Director: It requires a larger download for the full player installation, and the player is available only for Windows and Macintosh platforms. Director remains a popular authoring tool for CD-ROM and DVD-ROM development.

Macromedia Authorware

Authorware, like Flash, was originally a technology developed by another company and then bought by Macromedia (and now Adobe) to add to its software lineup. Since the initial acquisition, Macromedia has significantly developed the features and capabilities of Authorware. It is an authoring application and a companion plug-in technology, with similar audio/video integration capabilities as Adobe Director. However, Authorware was developed with e-learning in mind. You can use it to structure training solutions and monitor student learning. I mention Authorware as a potential competitor to Flash because many Flash developers use Flash to create Web-training modules that interact with server-side databases.

Scalable Vector Graphics

The Scalable Vector Graphics (SVG) format is widely supported by some of the largest names in the industry, such as Microsoft and Adobe. This format has even been approved as a graphics standard for the Web by the World Wide Web Consortium (W3C), whose purpose is to form universal protocols regarding Web standards. SVG is much more than a graphics format; it is also an XML-based development language. Some Adobe tools, including Adobe Illustrator, can create files based on this technology. Adobe also creates the plug-in for using this file format on the Web, but the W3C is pushing for all browsers to provide built-in support for the format so that a third-party download is unnecessary. This may be necessary if SVG is ever to become a viable content format because Web surfers have been quite slow to adopt the SVG plug-in. For more information on this topic, you can refer to www.w3c.org/Graphics/SVG and www.adobe.com/svg.

Microsoft Silverlight

In 2007, Microsoft launched the first version of the Microsoft Silverlight plug-in, which closely matches the capabilities of the Flash Player plug-in. Silverlight 1.0 relies largely on a JavaScript-based scripting language to create interactive content with a tool such as Microsoft Expression Blend 2. Silverlight can play video content with the addition of the Windows Media Player plug-in for your Web browser. While Silverlight technology has yet to take hold with most Web sites, it is quickly gaining mind share with Web developers looking to add advanced data-driven capabilities to their online projects.

Microsoft PowerPoint

PowerPoint is usually considered a tool for making offline presentations to show in business meetings, conferences, and seminars. What is perhaps not as well known is how PowerPoint is sometimes used online for presenting such content. A PowerPoint viewer plug-in enables your browser to handle these files, and PowerPoint can export HTML versions of slide shows. Although PowerPoint enables anyone from a designer to a programmer to easily create slide-show presentations, Flash can be considered a more robust tool for creating dynamic, high-impact presentations.

Note

More and more designers who use Apple Mac OS X are choosing to create PowerPoint-like presentations in Apple Keynote, a product available in Apple's iWork bundle.

SMIL, Real Systems RealPlayer, and Apple QuickTime

SMIL (Synchronized Multimedia Integration Language) also looks a lot like HTML markup tags. SMIL enables you to layer several media components in SMIL-compatible players such as the Real Networks RealPlayer and the Apple QuickTime Player. You probably have seen SMIL at work when you load RealPlayer and see the snazzy graphics that compose the welcome screen interface. With SMIL, you can layer interactive buttons and dynamic text on top of streaming video or audio content. You may not even think of SMIL as a competing technology, but rather a complementary one — Flash can be one of the multimedia tracks employed by SMIL! You can even use Flash as a track type in QuickTime, without the use of SMIL. When Flash 4 was released, Macromedia and Apple announced QuickTime Flash movies, which enabled you to create Flash interfaces that layer on top of audio-video content. The RealOne Player also plays "tuned" Flash files directly, without the use of SMIL. A tuned Flash file is weighted evenly from frame to frame to ensure synchronized playback. Note, however, that tuned files usually need to be strict linear animations without any interactive functionality.

Exploring Companion Technologies

Now that you have a better understanding of how Flash fits into the current World Wide Web, I can begin to discuss the technologies that contribute to Flash's well-being. In today's world of the Web developer, you not only need to know how to create your Flash movies but also how to implement Flash into existing environments, such as a Web browser or your business client's Web-ready (or not-so-Web-ready) application servers and related data sources.

HTML is here to stay

HTML is not going anywhere, regardless of the prolific nature of Flash on the Web. Using HTML to your advantage is very important because it is undeniably the best solution for certain forms of Web deployment. In addition, sites constructed entirely in Flash often require HTML to function properly. Here's how HTML works with Flash:

  • Displaying and formatting the movie on a Web page requires HTML. It isn't always easy to hand-code HTML to work with ActiveX for Internet Explorer and the plug-in for Mozilla-compatible browsers at the same time.

  • Placing some content within a Flash movie is not possible, so you sometimes need to link it from your movie to an HTML page. For example, some PDF files cannot be imported into a Flash CS5 document and will need to be linked from the Flash movie to be viewed separately with Adobe Reader. Or, you may need to access video files created for the RealOne Player or Windows Media Player. You can place links to these source files or link to an HTML document that embeds the source file.

Tip

If you want to integrate PDF documents with Flash movies, you might want to explore Macromedia FlashPaper. FlashPaper is a Flash movie file (.swf) that contains a document viewer and the document itself, enabling you to embed large print-ready documents on the Web or even within your own Flash movies. For more information on FlashPaper, see the FlashPaper section at www.flashsupport.com/links.

  • If your end user is not willing or able to view your Flash content, HTML enables you to provide an alternative version of your Web site. Despite the addition of accessibility options into Flash Player 6 and later, which enable screen-reader interaction, not all screen readers are currently able to access this feature. An HTML version of your content is sure to reach most of this potential audience.

Many people find learning, and perhaps even using, HTML to be painful and tedious. Accommodating the differences among browsers can sometimes be time consuming and dry work. However, knowing some HTML is highly recommended and well worth the effort. HTML should be understood by any Web professional. If you are uncomfortable with the code, using Macromedia Dreamweaver will help your transition into the HTML world.

Client-side scripting using JavaScript

ActionScript and JavaScript are similar beasts, especially since ActionScript developed into a full-blown language in ActionScript 2.0. By learning one language, you will be able to translate this knowledge with relative ease. Already knowing some JavaScript when entering the Flash realm definitely puts you at a strong advantage. However, JavaScript itself is frequently used in conjunction with Flash, as follows:

  • With JavaScript, you can create customized browser popup windows that open from Flash movies. By "customized," I mean browser windows that don't have any scroll bars, button bars, or menu items across the top of the browser window.

  • JavaScript can pass data into the Flash movie when the Web page containing the movie loads. Some browsers enable you to continually pass data back and forth between Flash and JavaScript. Also, you are able to dynamically pass variables from JavaScript right into the Flash movie.

  • JavaScript can be used to detect the presence or absence of the Flash Player plug-in in the user's Web browser, with JavaScript libraries such as SWFObject. Likewise, you can use VBScript on Internet Explorer for Windows to detect the Flash Player ActiveX control. JavaScript (or VBScript) can redirect the Web browser to alternative content if the player is not installed.

  • Flash movie properties such as width and height can be written on-the-fly by using JavaScript. You can also detect various system properties (which is also possible by using ActionScript) in JavaScript code and pass this information into Flash.

Tip

Flash Player 8 introduced the ExternalInterface API, which enables you to more easily pass parameters between a Flash movie and JavaScript. For more information on this functionality, read Chapter 21, "Integrating Flash Content with Web Pages."

The world of Web services

By using Flash CS5, you can tap an ever-expanding world of data transfer directly to your Flash movies. If you've stayed in the loop of Web technologies, you've likely heard of Web services, which is a generic term to describe a standardized approach to transfer data from one Web application to another. Web services use a format known as Web Services Description Language (WSDL), which uses a type of XML formatting called Simple Object Access Protocol (SOAP). It's not really important to know these acronyms as much as it is to understand what they do. WSDLs (pronounced "whiz-duhls") enable you to share complex data structures in a uniform, standardized manner. As long as a technology such as the Flash Player or ColdFusion can interpret a Web service, it can utilize its data. And because all WSDLs use the same formatting, your Flash movie can easily access data from public services offered by various companies on the Web. You can also create your own Web services with application servers such as Adobe ColdFusion as well. Web services simply provide a gateway from which your Flash movie can access data over the Internet.

Note

One popular Web service is the Amazon associates program. Just about anyone can become an Amazon.com associate. See http://associates.amazon.com for more details about enrolling in Amazon's developer program for Web services. You don't have to use Amazon.com's Web Service, but it's a fun source of information to keep you engaged while you're learning how to use Web services with your Flash content.

Note

Don't forget Flash Remoting! Flash Player can send and receive data by using Flash Remoting gateways, which can be installed on a variety of application servers. Flash Remoting is built into Adobe ColdFusion and provides a faster and more efficient means of transferring data between a Flash movie and an application server than Web services can accomplish.

Adobe server technologies

Nowadays, it's always helpful to have more than just client-side Flash development skills. With Adobe Flash Media Interactive Server, Flash Remoting, and Adobe LiveCycle Data Services, more and more business clients are looking for experienced Flash designers and developers to add real-time interactivity to their company's Web sites or Internet-aware applications. Applications created for Flash Media Interactive Server use server-side ActionScript (ASC files) to describe and control the interactivity between a Flash movie and the server's resources, including real-time streaming audio/video media and synchronized data updates between multiple Flash clients and the application.

Recognizing Project Potential

In this section, I provide an overview of the categories of Flash projects that you can produce. This is just a starting point to prime your creative juices and break through any self-imposed limiting perceptions that you may have about Flash media. The categories I have devised here are by no means industry-standard terms — they're broad, generalized groups into which most Flash development falls.

Linear presentations

In the early days of Internet growth, Flash shorts (cartoons) were the media buzz. These cartoons generally played from start to finish in a very linear fashion. Generally speaking, these movies load and then play — and count on catching the user's attention through the story and animation. These movies sometimes contain advanced ActionScript for animation, including randomized movement or content.

Note

Linear Flash presentations do not necessarily have to be displayed within a Web browser — or even online. Several film-production and advertising companies use Flash to create high-quality animation for use in broadcast TV and feature films.

Interactive presentations

Interactive presentations represent the next step up from linear presentations. They provide the user control over the way information is presented, the flow, or the experience altogether. Usually, Web sites of any construct will be considered an interactive presentation. If you have information or content in a section somewhere in a movie or Web site, then you probably have an interactive presentation. An interactive presentation enables end users to choose the content they see by enabling them to navigate throughout a site, bypassing some content while accessing other content. A Flash movie in this category may have all the content viewed stored in a container movie or across several Flash files linked to a main site.

Data-driven presentations

The data-driven presentations category of Flash development represents any movies that load external data (either dynamic or static) to deliver the presentation to the user. For example, a weather site that uses Flash may download dynamic Flash graphics of precipitation maps to display to the site's visitors. These graphics may be customized for each user of the site, depending on where he or she lives. Data-driven may even simply mean that text information within the Flash movie changes from time to time. Simply put, anytime information is separated from the actual Flash movie, you can say it is data-driven.

Data-driven applications (or Rich Internet Applications)

The data-driven applications category is somewhat loosely defined as those Flash movies that enable the user to accomplish some sort of task or enable a transaction from the Flash movie to use an external remote data source. For example, an online Flash ATM (that is, bank machine) could allow a bank customer to log in to the bank's secure server and transfer funds from one account to another or pay a bill. All these tasks would require a transaction from the Flash movie to the bank's server. Another example could be an online Flash shopping cart, in which visitors add products to their virtual carts and check out with their final order. Again, these tasks would require the Flash movie to send and receive data. The term Rich Internet Application, or RIA, was coined during the Macromedia MX product line launch and implies the use of integrated data and rich media within a graphical user interface (GUI), in or out of a Web browser. Typically, RIAs combine Flash movies with one or more server-side technology, such as Flash Remoting and Adobe Flash Media Interactive Server.

Summary

  • Expectations of Web sites produced by Flash developers and designers grow with every new version of Flash. With an ever-increasing list of features and capabilities included with each version of the Flash Player, sites not facilitating new technology (such as new forms of interaction or media content) can easily become overlooked or considered uninteresting.

  • Flash CS5 has many features that make it a vital piece of authoring software for Web sites and applications. Some of the main reasons to use it include small movie file sizes and the capability to integrate rich media content.

  • There are several multimedia file formats available on the Web today. Although most users have many of the popular plug-ins installed, some users have restricted bandwidth and computer system environments. Flash has the capability to produce small movie files that can play identically across several platforms and devices.

  • In order to develop advanced Flash projects, you should know the necessary HTML, JavaScript, and data-formatting standards (which now include Web services) that enable Flash to interact with other environments and data sources. These languages broaden the capabilities for interactivity and access to large amounts of data.

..................Content has been hidden....................

You can't read the all page of ebook, please click here login for view all page.
Reset