2010-11-13 35 views
2

J'ai écrit une application dans Flash cs5, qui permet aux utilisateurs de créer leurs propres cartes de Noël, mais à la fin de la programmation j'ai réalisé que je devais fournir une fonction pour enregistrer la carte de l'utilisateur pour séparer le fichier SWF ...Comment exporter MovieClip en SWF via AS3?

S'il vous plaît, quelqu'un qui sait, aidez-moi! J'ai essayé de trouver quelque chose dans Google, mais tout ce que je comprends est que je devrais utiliser ByteArray. Mais je ne peux pas vraiment, comment je peux l'utiliser dans mon cas?

Tout ce que j'ai trouvé est ces quatre lignes:

tampon var: ByteArray = new ByteArray();

buffer.writeObject (MOVIE_CLIP_HERE);

buffer.position = 0;

buffer.writeBytes (...);

Pour les personnes âgées peut-être peut aider, mais je ne peux pas faire avec l'aide de ces lignes que je peux résoudre mon problème ... merci beaucoup)))

+0

Connexe: http://stackoverflow.com/questions/12262517/is-there-any-way-to-export-vector-graphics-from-a-swf –

Répondre

1

Vous aurez besoin server- technologie latérale, comme PHP ou ASP, parce que Flash Player ne peut rien sauvegarder sur le disque. Et si vous pensez à créer un fichier SWF par programme, cela peut être très difficile. Cela étant dit, voici comment je ferais ceci:

D'abord, je voudrais écrire le MovieClip à un ByteArray, comme dans votre exemple:

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

J'enverrait le tableau d'octets à un PHP script qui enregistrerait les données du tableau d'octets dans un fichier (un fichier texte fera l'affaire). Les données enregistrées seront en fait votre MovieClip sérialisé. Ensuite, je voudrais créer un fichier SWF qui servira de carte réelle, mais ce sera en fait un conteneur pour le MovieClip enregistré. Ce fichier va charger les données du fichier texte dans un ByteArray et désérialiser le MovieClip:

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

Une fois que vous avez réussi, vous avez terminé. Lorsque les utilisateurs sauvegardent leurs cartes sur leur ordinateur, vous pouvez leur envoyer le fichier swf conteneur et conserver le fichier de données sur votre serveur (mais dans ce cas, le swf devra charger le MovieClip depuis votre serveur), ou vous pouvez leur donner les deux fichiers .

J'espère que cela a aidé.