Вопрос

У меня есть SWF-файл с некоторой графикой, которую мне нужно использовать в моей программе haxe (в будущем тоже скомпилированной в SWF).С встраиванием изображений с помощью swfmill проблем нет, поэтому я попытался разобрать SWF с помощью swfmill и нашел несколько записей, таких как DefineSprite и DefineShape, которые имеют идентификаторы объекта.

Можно ли прикрепить эти элементы из haxe, используя SWF-файл в качестве библиотеки?

Это было полезно?

Решение

Вы можете прикрепить элемент (картинку, звук и т.п.), если у него есть:

  1. Для него экспортирован символьный класс (или, может быть, ExportAsset)
  2. Создана заглушка класса AS3 (по крайней мере, для flash9+) — Haxe позаботится об этом, по крайней мере, для ресурсов в первом кадре

Для haxe вы должны поддерживать-swf-lib mylib.swfпереключатель, который принимает в качестве параметра только один SWF.Если вы хотите использовать несколько библиотек, вы можете собрать их в одну с помощью swfmill или СэмХакс, и поддержите собранную библиотеку.

Затем из 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"), []);

Надеюсь это поможет.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top