begin process at 2012 05 27 16:55:16
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Flash / Flash MX

 > 

Scripts

 > 

ActionScript

 > 

Sauvegarder un jpg (as3)


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

Sauvegarder un jpg (as3)

mercredi 11 novembre 2009 à 13:02:38 | Sauvegarder un jpg (as3)

Kangouroops

Bonjour tout le monde,
Je suis entrain de faire un générateur d'avatar et je bloque à un point essentiel, la sauvegarde de l'avatar.
Alors j'ai testé plusieurs code, mais à chaque fois que je clique sur le bouton enregistrer j'enregistre une image banche... ce qui est assez déprimant.
Donc pour expliquer un peu la démarche,
J'ai un movieclip dans lequel j'ajoute des uiloader dont les sources sont des images png.
Et j'essaye de sauvegarder ce movieclip.

Voici une partie de mon code:
Code ActionScript :
	var header:URLRequestHeader = new URLRequestHeader("Content-type", "application/octet-stream");
	var jpgURLRequest:URLRequest = new URLRequest("jpg_encoder_download.php?name=avatar_by_kps.jpg");
	jpgURLRequest.requestHeaders.push(header);
	jpgURLRequest.method = URLRequestMethod.POST;
	if (global_variable.taille_choisie == 130){
	addChild (Clip_130);
	Clip_130.visible = true;
	var jpg_130:BitmapData = new BitmapData (taille_reduite2, taille_reduite2);
	jpg_130.draw(Clip_130);
	var jpgStream_130:ByteArray = jpgEncoder.encode(jpg_130);
	jpgURLRequest.data = jpgStream_130;
	navigateToURL(jpgURLRequest, "_blank");


Donc en live ça donne ça:
[ Lien ]
Comme vous le voyez, ça ne marche pas.
Mais je n'ai aucune espèce d'idée du pourquoi ça ne marche pas.
Si l'un de vous peut m'aider, que ce soit en corrigeant le problème ou en apportant une autre solution, je lui en serai très reconnaissant.
Par avance, je vous remercie.
mercredi 11 novembre 2009 à 13:47:23 | Re : Sauvegarder un jpg (as3)

pegase31

Membre Club Administrateur CodeS-SourceS
Bonjour,

tu veux sauvegarder l'image sur le serveur ?

Peg'
mercredi 11 novembre 2009 à 14:31:31 | Re : Sauvegarder un jpg (as3)

Kangouroops

Bonjour,
Non, que l'utilisateur puisse l'enregistrer en local.
Merci d'avance.
mercredi 11 novembre 2009 à 14:39:58 | Re : Sauvegarder un jpg (as3)

pegase31

Membre Club Administrateur CodeS-SourceS
alors avec CS4, il suffit d'utiliser la fonction FileReference.save() et le tour est joué.
Mais CS4 uniquement ... ça n'existe pas avec CS3.

Peg'
mercredi 11 novembre 2009 à 14:42:42 | Re : Sauvegarder un jpg (as3)

Kangouroops

Huhu, ça tombe bien, j'ai Cs4,
Du coup je vais rechercher FileReference.save() dans l'aide, voir comment ça fonctionne et essayer,
Si je n'arrive pas, je reviendrai ici même, et même si j'arrive, histoire de vous tenir au courant. :)
Car mon soucis pour le moment c'est que l'image enregistrée était blanche, donc je vais voir si j'ai le même problème avec FileReference.save().
Merci beaucoup :)
mercredi 11 novembre 2009 à 14:56:15 | Re : Sauvegarder un jpg (as3)

Kangouroops

Hmm, et bien finalement je reviens bien vite, j'ai un soucis,
J'ai cette erreur:

1061: Appel à la méthode save peut-être non définie, via la référence de type static Class.



Or, au début de mon document j'ai bien importé les packages:
Code ActionScript :
import flash.net.*;


Est-ce que ce sont d'autres packages que je dois importer ?
Par avance, je te remercie.
mercredi 11 novembre 2009 à 15:17:31 | Re : Sauvegarder un jpg (as3)

pegase31

Membre Club Administrateur CodeS-SourceS
il faut instantier un objet fileRéférence avant d'utiliser la méthode :

var saveFile:FileReference = new FileReference();
saveFile.save(monByteArray, "nomduFichier.jpg");

Peg'
mercredi 11 novembre 2009 à 15:32:18 | Re : Sauvegarder un jpg (as3)

Kangouroops

Ok, merci, je n'ai plus d'erreurs !
Par contre, j'ai le même soucis, l'image enregistrée est blanche.
J'imagine donc que le soucis vient de mon ByteArray.

Voici le code où je définis mon ByteArray
Code ActionScript :
	addChild (Clip_180);
	Clip_180.visible = true;
	var jpg_180:BitmapData = new BitmapData (taille_defaut, taille_defaut);
	jpg_180.draw(Clip_180);
	var jpgStream_180:ByteArray = jpgEncoder.encode(jpg_180);


Clip_180 est un MovieClip dans lequel j'ai des uiloaders qui chargent des png.
Je suis perdu,
Merci pour ton aide Pégase.
jeudi 12 novembre 2009 à 18:04:55 | Re : Sauvegarder un jpg (as3)

Kangouroops

Salut, c'est encore moi, je continue mes petits tests.
J'ai essayé de récupéré les pixels d'une autre façon:
Code ActionScript :
	var rect_100:Rectangle = new Rectangle (x_reduite, y_reduite, taille_reduite3, taille_reduite3);
	var jpg_100:BitmapData = new BitmapData (x_reduite, y_reduite, false);
	jpg_100.getPixels(rect_100);
	var enregistrement_100:FileReference = new FileReference();
	enregistrement_100.save(jpg_100, "essai.jpg")

De cette manière, au lieu d'enregistrer une image toute blanche, il m'enregistre un fichier de 0 octets... donc même pas une image :/
Je continue à chercher de mon côté mais si quelqu'un a une idée je suis toujours preneur :)
jeudi 12 novembre 2009 à 18:51:13 | Re : Sauvegarder un jpg (as3)

pegase31

Membre Club Administrateur CodeS-SourceS
si tu lis la doc de "save", tu vois que tu peux enregistrer un ByteArray et pas une image directement.

Peg'

1 2

Cette discussion est classée dans : code, var, jpg, avatar, jpgurlrequest


Répondre à ce message

Sujets en rapport avec ce message

Mon loading ne s'affiche mais... [ par bboy ] Bonjour, j'ai un petit pb de loading. Quand j'ouvre ma page web mon animation reste blanche quelques secondes puis apparait la dernière image de mon l Pb LoadMovie & taille image nulle [ par fabien44 ] Bonjour,je charge des images avec la fonction suivante:MovieClip.prototype.chargement_jpg = function(jpg) { var cible = this.dest; cible.loadMovie(jpg LoadVars en ligne [ par UniCyclon ] Bonjour,J'ai un sceau qui fonctionne avec un LoadVars dont le code est le suivant :var loadvars = new LoadVars(); var loadvars2 = new LoadVars(); <b Catch une URL pour la mettre dans une var [ par Jeho ] Bonjour, je m'explik:je tape une URL qui load un swf... au TOUT DEBUT du code du swf.. j'aimerai prendre l'url tapée..pour la mettre dans une variable Diaporama forever [ par rolag ] Bonjour,Voila je rencontre un petit probleme pour mon site, je cherche à inserer un fichier swf dans un autre. je m'explique, sur mon site on a pls bo prechargement de jpg(comme var) depuis inernet [ par eroskod ] j'ai une variable ph qui porte le chemaint de la photo depuit internet.et j'ai un loader pour charger l'image.il ne marche pas on line.je veux que le arrêt de déplacement d'un clip et explication de code [ par _tony ] Bonjour,Jeune Padawan de Flash j'ai quelques question à vous poser, concernant ce test:test-navig.swfAlors voilà trois qu un code dynamique AS [ par stefbuet ] Bonjour !Est-il possible d'effectuer un code dynamique dans flash ?Vous ne m'avez pas compris, c'est normal, je m'explique.Si j'ai par exemple dans mo problème sur code [ par guest ] Bonjour !voilà mon bout de code qui me pose problemej'ai plusieurs lien dans des variables lien1, lien2 etc...var n = n + 1;var link = "_root.lien"+n; prb diaporama [ par gonimus ] Je débute et je me suis lancé dans le diaporama de _benjy. http://www.flashkod.com/tutorial.aspx?id=232 Je l'ai essayé mais je n'obtient aucun résult


Nos sponsors


Sondage...

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

A découvrir



 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 1,451 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales