By: Jim Babbage
Page 1 of 2
Fireworks CS5 supports the FXG 2.0 format, giving us a lot more flexibility if we're planning to port our designs over to Flash Catalyst. This article details what is supported and - more importantly - what isn't. It will tell you what you can use with impunity and what Fireworks features to watch out for if you're planning to export your designs or artwork in the FXG format.
What is FXG?
Good question. The term gets bandied about quite a bit these days, but it's not necessarily defined. FXG stands for Flash XML Graphic. According to Adobe, it's an XML-based graphics interchange file format for the Flash Platform. The 2.0 version contains high-level graphical and text primitives that can be used to create, group, transform and visually modify basic vector and bitmap shapes. The FXG rendering model follows the Flash Player 10 rendering model and exposes all the graphics capabilities of the Flash platform as well as offering expandable support to accommodate future capabilities of the Flash Player.
OK, and what does that mean?
Basically, it means that the format can describe basic vector shapes like rectangles, ellipses and polygons, supports rich text, and can link to bitmap graphics. Adobe seems to be pushing hard to make this a format that all the major Creative Suite applications can use. Currently, Flash CS5 Professional, Illustrator CS5 and Photoshop CS5 (PS requires a free plug in), can create and edit FXG 2.0 graphics. Fireworks CS5 can't edit the format, but it can create it via an export workflow (FXG and Images). Flash Catalyst CS5 can open or import FXG graphics and can generate them silently for round trip editing in Illustrator or Photoshop.
Admittedly, these are very simple definitions. For more information about FXG, visit http://opensource.adobe.com/wiki/display/flexsdk/FXG+2.0+Specification
Why FXG in Fireworks?
The main reason is Flash Catalyst. A workflow needed to be established so that Fireworks remained a viable option for screen design of interactive projects. And nothing was being done at the Flash Catalyst end*. While FC can import PNG files, it doesn't support the modified PNG format used by Fireworks as a native format. So Fireworks PNG files get flattened when imported into FC.
This workflow began in CS4 with Fireworks supporting FXG 1.0, but the export was less than ideal. A great deal of artwork generated in Fireworks CS4 ended up being flattened into bitmaps when exported as FXG 1.0. This was not a Fireworks limitation; it was a limitation of the FXG spec. FXG 2.0 is a richer spec and supports more filters and blend modes than 1.0.
* Apparently the Flash Catalyst team was more interested in creating round trip workflows for Illustrator and Photoshop than for Adobe's primary screen design tool. My understanding, however, is that the Flash Catalyst team has every intention of supporting Fireworks PNG files in future releases. I'm taking a wait and see approach to this, however. Priorities can change, after all . . .
What does Export FXG and Images do?
The FXG export script takes your existing Fireworks design - selected object or objects, selected page or an entire multi-page prototype - and converts the artwork into FXG graphics (vectors which are described in the FXG document and exposed for editing in a text editor, if you know MXML). If the script encounters bitmaps or anything which is not supported by FXG 2.0, it converts those objects to flattened PNG files, saves them to a folder, and establishes links to the bitmaps in the FXG document.
The advantage is that your FXG export will look practically identical to the original Fireworks design. Occasionally, text is misinterpreted and requires a little tweaking when in Flash Catalyst, but this is easy to do because Flash Catalyst supports editing of rich text.
In a nutshell, pages, states, layers, sublayers, text, symbols, vectors, masking, bitmaps, some Live Filters, gradients and blending modes are natively supported by FXG 2.0, giving you a pretty robust format with a lot of editing flexibility.
What's the catch?
This all sounds great, you say. What's the bad news? Well, the bad news is mainly that FXG is a fairly new file format. And while many Fireworks (or Photoshop or Illustrator) features are supported, there are also many which are not supported. As I mentioned earlier, anything which isn't supported does get exported as a bitmap, but you have an automatic limitation with bitmaps - they are resolution-dependant. So if you've created a button with an inner bevel in Fireworks, you will still get a button with an inner bevel in FXG, but that version of the button will be a flattened bitmap. This means you can't resize the button on the fly in Flash Catalyst.
Basically, it means you need to know what is supported by FXG 2.0 so you can plan ahead.