Прикрепление SWF-элементов с помощью ObjectID
У меня есть SWF-файл с графикой, которую мне нужно использовать в моей программе haxe (в будущем скомпилированной в swf). Нет проблем с встраиванием картинок с помощью swfmill, поэтому я попытался разобрать swf с помощью swfmill и нашел несколько записей, таких как DefineSprite и DefineShape, которые имеют objectID.
Можно ли прикрепить эти элементы из haxe, используя файл swf в качестве библиотеки?
1 ответ
Вы можете прикрепить элемент (изображение, звук и т. Д.), Если они имеют:
- SymbolClass экспортируется для него (или может быть ExportAsset)
- Создана заглушка класса AS3 (по крайней мере для flash9+) - об этом позаботится Haxe, по крайней мере, для ресурсов в первом кадре
Для 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"), []);
Надеюсь это поможет.