【发布时间】:2010-02-08 10:33:39
【问题描述】:
是否可以动态加载矢量文件,在本例中为 Actionscript 3 中的 .ai 文件?您可以将它们导入舞台,但我想动态执行此操作,有没有办法做到这一点?
【问题讨论】:
标签: actionscript-3
是否可以动态加载矢量文件,在本例中为 Actionscript 3 中的 .ai 文件?您可以将它们导入舞台,但我想动态执行此操作,有没有办法做到这一点?
【问题讨论】:
标签: actionscript-3
您可以将矢量数据保存为 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);
}
我没有测试过,但我认为这行得通!
【讨论】: