FLEX2对SVG的支持
在FLEX2应用程序中可以使用SVG资源, 但只能象JPG和GIF那样作为一种图像引入, 而不包括SVG的一些高级特性, 而且无法在运行时加载, 只能在编译时静态加载.
Flex目前支持SVG1.1规范的一部分, 范围包括SVG文档结构, CSS风格, 变换, 路径, 基本图形, 颜色, 以及文本,绘图, 渐变和字体功能的一部分, 不支持SVG动画,脚本和事件, 而且也无法实现FLEX应用程序与SVG之间的交互.
所以说FLEX对SVG的支持是基本的和静态的.
下面是一个在FLEX中加载SVG的例子
<?xml version="1.0" encoding="utf-8"?>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml"
width="800" height="600">
<mx:Script>
<![CDATA[
[Embed(source="res/test.svg")]
[Bindable]
public var svgTest:Class;
]]>
</mx:Script>
<mx:Image id="svg1" source="{svgTest}" width="128" height="130"/>
</mx:Application>
编译运行后, 可以发现在BIN目录下的RES目录中被拷贝了一个同名的test.svg文件, 这说明FLEX应用是使用链接而不是嵌入的方式处理SVG文档的, 这同其它图像资源是相同的.
但是对其它类型资源,例如FLASH, 可以使用SWFLoader动态加载, 例如:
loader = new SWFLoader();
loader.load("res/segment4.swf");
但SVG不能进行动态加载, 希望FLEX能够进一步增加对SVG的支持力度, 至少包括动态加载,脚本和事件, 最好还有SVG动画等.