Я не уверен, что полностью понял ваш вопрос, но вы можете использовать компилятор командной строки mxmlc.exe
из Flex SDK для динамической компиляции вашего проекта Flash.
Вы можете сгенерировать код (вместе с вашим приложением) для вашего флэш-приложения в виде файла .as
, где вы можете использовать операторы встраивания для ваших изображений и строковые переменные для вашего текста.Этот сгенерированный основной класс должен использовать код из другого класса для обработки этих «динамических данных».Затем передайте этот сгенерированный класс компилятору в качестве начальной точки для вашего приложения Flash, и вы получите .swf
в качестве результата.
Edit
Вот пример статического класса, который обрабатывает динамическийdata.
package
{
import flash.display.Sprite;
import flash.text.TextField;
public class Base extends Sprite
{
public function Base()
{
}
public function init(dyn:Main) : void
{
// add a new instance of the embedded image
addChild( new dyn.DynamicImage1() );
// add a new text field with the dynmaic text
var text:TextField = new TextField();
text.text = dyn.DynmaicText1;
}
}
}
А вот пример для сгенерированного основного класса
package
{
import flash.display.Sprite;
import flash.events.Event;
public class Main extends Sprite
{
[Embed(source = '../relative/path/to/dynamic/image.png')]
public var DynamicImage1:Class;
public var DynmaicText1:String = "This is directly from Database";
public function Main():void
{
if (stage) init();
else addEventListener(Event.ADDED_TO_STAGE, init);
}
private function init(e:Event = null):void
{
var base:Base = addChild(new Base()) as Base;
base.init(this);
}
}
}
Теперь передайте компилятору Main
в качестве начальной точки.
В общем, это всего лишь простой пример, и его можно обобщить, используя массивы, Vector<T>
, интерфейсы и т. Д.