Adobe FXG, WTF?

Adobe FXG is so wrong in so many ways, its untrue. When Microsoft decided to do there own xml vector format I was shaking my head but now Adobe's also doing the same my head is in my hands.

FXG 1.0 describes an XML-based graphics interchange format for the Flash Platform. FXG 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 very closely the Flash Player 10 rendering model and exposes all graphics capabilities of the Flash platform as well as offering expandable support to accommodate future capabilities of the Flash Player.

When initial work on an XML-based graphics interchange format began, the natural first thought was to use SVG. However, there are key differences between SVG and Flash Player's graphics capabilities. These include core differences in SVG and Flash's rendering model with regards to filters, transforms and text. Additionally, the interchange format needed to be able to support future Flash Player features, which would not necessarily map to SVG features. As such, the decision was made to go with a new interchange format, FXG, instead of having a non-standard implementation of SVG. FXG does borrow from SVG whenever possible.

Aka, we see the need for a xml vector language but svg is already developed and we can't be bothered to change our flash engine to support it. Instead we want to write a spec around our already written code base and make you all adopt it. Well geez thanks Adobe. I really hope no one uses FXG, hopefully the lesson will get back to Adobe that they can't just stick opensource on a manipulated web standard and expect people to use it unless you make them do it in your own proprietary world (*cough* Actionscript). Thank goodness at least Google is backing open standards like SVG.

Comments [Comments]
Trackbacks [0]

Author: Ianforrester

Senior firestarter at BBC R&D, emergent technology expert and serial social geek event organiser. Can be found at, and