在Actionscript 3中,是否可以动态加载矢量文件,例如.ai文件?您可以将它们导入到舞台中,但我想以动态方式执行此操作,有没有方法可以实现这一点?
在Actionscript 3中,是否可以动态加载矢量文件,例如.ai文件?您可以将它们导入到舞台中,但我想以动态方式执行此操作,有没有方法可以实现这一点?
您可以将矢量数据保存为XML格式,例如SVG(Illustrator支持此格式),然后使用URLLoader加载它,解析数据并将其绘制到Shape对象中。
网上有一些AS3 SVG解析器可供使用:http://www.google.com/search?q=svg+as3
对于AI(以及许多其他格式),您可以使用Zaail-lib。它可能有点老旧,但它确实有效。http://zaalabs.com/2010/04/introducing-zaail-40-image-format-support-for-flash/
当然,
你可以使用URLLoader类在运行时加载它:
var _loader:URLLoader;
var request:URLRequest = new URLRequest("http://yourserver.com/graphic.ai");
var loader:URLLoader = new URLLoader();
loader.addEventListener(Event.COMPLETE, completeHandler);
loader.load(request);
private function completeHandler(e:Event):void {
var content:DisplayObject = _e.target.content;
addChild(content);
}
我没有测试过,但我认为这个可以工作!