0
我有一些swf文件,我需要在我的haxe中使用(未來編譯爲swf)程序。 swfmill嵌入圖片沒有問題,所以我試圖用swfmill反彙編swf,發現了一些類似DefineSprite和DefineShape的對象ID。通過ObjectID附加swf元素
是否有可能將haxe中的這些元素作爲庫使用swf文件?
我有一些swf文件,我需要在我的haxe中使用(未來編譯爲swf)程序。 swfmill嵌入圖片沒有問題,所以我試圖用swfmill反彙編swf,發現了一些類似DefineSprite和DefineShape的對象ID。通過ObjectID附加swf元素
是否有可能將haxe中的這些元素作爲庫使用swf文件?
,如果他們有,您可以將一個元素(圖片,聲音等):
對於haXe的,你必須支持 -swf-lib mylib.swf
開關,只需要一個SWF文件作爲參數。如果你想使用多個庫,你可以用swfmill或SamHaxe將它們組裝成一個庫,並支持組裝的庫。
從HAXE,你就可以使用
var mySprite: flash.display.Sprite = cast
Type.createInstance(Type.resolveClass("the.exported.SpriteSymbolName"), []);
var myBitmap: flash.display.Bitmap = cast
Type.createInstance(Type.resolveClass("the.exported.BitmapSymbolName"), []);
希望這有助於。
有點幫助。沒有回答我的問題,但至少我知道我不是唯一不能這樣做的人(通過ObjectID鏈接)。 – stroncium 2009-10-12 21:47:51
我想告訴你,如果給定的ID沒有任何SymbolClass,那麼你就不能實例化它。然而,如果你需要它,你可能會做一些破解: 使用format.swf haxelib解析SWF,向解析的結構添加SymbolClass標記,以及AS3類存根(使用format.abc組裝)。你可以偷看SamHaxe的來源,看看它是如何做到這一點的。 – ron 2009-10-19 12:46:56
當然,這可以在運行時即時完成,您可以加載和使用新組裝的swf文件。 – ron 2009-10-19 12:48:17