2010-02-08 20 views

Respuesta

-1

Por supuesto,

puede utilizar la clase URLLoader para cargar en tiempo de ejecución:

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); 
    } 

no he probado, pero creo que esto funciona!

+3

"_e.target.content" debería ser "e.target.data". Creo que también necesitas encasillarlo antes de que el compilador te permita ponerlo en una variable DisplayObject. ¿Quizás estabas pensando en Loader en lugar de URLLoader? El código actual no funcionará porque Flash no tiene idea de qué tipo de datos se acaba de cargar (podría ser XML, datos binarios, PNG, etc.) y por lo tanto no puede convertir el archivo AI en un DisplayObject porque no sabe que el los datos cargados eran un archivo AI. No estoy seguro de que Flash pueda convertir archivos AI en tiempo de ejecución en primer lugar. – Cameron

+0

Uh, tienes razón. Tiene que ser un cargador en lugar de un URLLoader. Pero no estoy seguro con el encasillado, voy a comprobarlo más tarde ;-) – 23tux

1

Puede guardar los datos vectoriales en un formato XML como SVG (Illustrator lo admite), luego cargarlo usando URLLoader, analizar los datos y dibujarlos en un objeto Shape.

Hay algunos programas de análisis AS3 SVG disponibles en la web: http://www.google.com/search?q=svg+as3

+0

Combo "AI-> SVG - carga-> Flash" no es una mejor variante. Exportar a SVG siempre fue terrible en Illustrator. –