Как экспортировать MovieClip в SWF через AS3?

Я написал некоторое приложение на Flash cs5, которое позволяет пользователям создавать свои собственные рождественские открытки, но в конце программирования я понял, что должен предоставить некоторую функцию для сохранения карты пользователя в отдельный SWF-файл...

Пожалуйста, кто знает, помогите мне! Я пытался найти что-то в гугле, но все, что я понимаю, это то, что я должен использовать ByteArray. Но я действительно не могу понять, КАК я могу использовать это в моем случае?

Все, что я нашел, это четыре строки:

var buffer:ByteArray = новый ByteArray();

буфер.writeObject(MOVIE_CLIP_HERE);

буфер.позиция = 0;

буфер.writeBytes(...);

Для пенсионеров может поможет, но я не понимаю как с помощью этих строк решить свою проблему... спасибо большое)))


person Alexey    schedule 13.11.2010    source источник
comment
Связанный: stackoverflow.com/questions/12262517/   -  person DanielBlazquez    schedule 20.09.2012


Ответы (1)


Вам понадобятся некоторые серверные технологии, такие как PHP или ASP, потому что Flash Player не может ничего сохранять на диск. И если вы думаете о программном создании файла swf, это может быть очень сложно. При этом я бы сделал так:

Во-первых, я бы написал клип в ByteArray, как в вашем примере:

var buffer:ByteArray = new ByteArray();
buffer.writeObject(card_mc);

Затем я бы отправил массив байтов в PHP-скрипт, который сохранил бы данные из массива байтов в файле (подойдет текстовый файл). Сохраненные данные фактически будут вашим сериализованным мувиклипом. Затем я бы создал swf-файл, который будет служить настоящей карточкой, но на самом деле он будет контейнером для сохраненного мувиклипа. Этот файл загрузит данные из текстового файла в ByteArray и десериализует мувиклип:

var loadedClip:MovieClip = MovieClip(byteArray.readObject());

Как только вы справились с этим, все готово. Когда пользователи сохраняют свои карты на свой компьютер, вы можете отправить им swf-файл контейнера и сохранить файл данных на вашем сервере (но в этом случае swf должен будет загрузить мувиклип с вашего сервера), или вы можете дать им оба файла. .

Надеюсь, это помогло.

person Corneliu Dascălu    schedule 03.12.2010