Как заставить растровое изображение генерировать SWF-файл - PullRequest
0 голосов
/ 17 июня 2011

Ресурс растрового изображения, обычно он заставляет растровое изображение генерировать SWF-файл и использует класс Loader для загрузки в приложение. Я ищу ответы в Google и нахожу два способа создания SWF-файла, один. используйте инструмент mxmlc. и еще, используйте jsfl. Я знаю, что мы можем встроить растровое изображение или файл SWF в код As. и используйте команду mxmlc следующим образом: Файл as является Vip.as, а код:

package 
{
    public class Vip
    {
        [Embed(source="vip.gif"]
        public static var vip:Class;
    }
}

и сейчас я использую mxmlc Vip.as ... Он имеет файл Vip.swf, загрузите файл Vip.swf на сервер. Затем в flashBuilder создайте новый проект ActionScript с кодом приложения:

public class LoadUI extends Sprite
{
    public function LoadUI()
    {
        init(); 
    }

    private function init():void {
        var loader:Loader = new Loader();
        loader.contentLoaderInfo.addEventListener(Event.COMPLETE, completeHandler);
        var context:LoaderContext = new LoaderContext();
        context.applicationDomain = new ApplicationDomain(ApplicationDomain.currentDomain);

        loader.load( new URLRequest('http://localhost/swfResouce/Vip.swf'));


    }

    private function completeHandler(e:Event):void {
        var loaderInfo:LoaderInfo = e.currentTarget as LoaderInfo;

    }

и отладить приложение, ошибка:

VerifyError: Error #1014: Class Not Found  mx.core::BitmapAsset.

Я не знаю, как использовать mxmlc для создания SWF-файла. И без ошибок при отладке кода.

Другой способ - использовать JSFL для генерации SWF во Flash CS5, но я не знаю, как это использовать. Ах, очень больно.

Ответы [ 3 ]

0 голосов
/ 18 июня 2011

Чтобы избежать

VerifyError: Ошибка # 1014

попробуйте скомпилировать со статической связью:

mxmlc -static-link-runtime-shared-libraries=true -debug=true Main.swf --Main.as

[РЕДАКТИРОВАТЬ]

mxmlc -static-link-runtime-shared-libraries=true -debug=true Main.as
0 голосов
/ 18 июня 2011

Почему бы вам просто не загрузить изображения напрямую (из Loader) и обернуть их в Sprite? GIF точно не нужен график. :)

0 голосов
/ 17 июня 2011

Я предполагаю, что вы хотите отобразить встроенное изображение (GIF).

Вот как это делается:

package
{
    import flash.display.Bitmap;
    import flash.display.Sprite;

    public class Main extends Sprite
    {

        [Embed(source="vip.gif")]
        private var embeddedVip : Class;


        public function Main()
        {
            var vip : Bitmap = new embeddedVip();
            addChild(vip);
        }
    }
}
...