Bonjour,
Ayant effectué plusieurs recherche sur le net et constatant que la réponse ne se trouvait pas sur Flashkod je décide donc de poster une source servant principalement de ressource.
La classe mise à disposition ici est un algorithme de conversion png vous permettant en autre d'exporter vos images via la classe FileReference en fichier png.
Attention : Je ne suis en aucun cas l'auteur de cette classe.
Le but de cette source n'est autre que de partager une classe que j'ai découverte sur le net et qui semble être très utile.
Lien vers le site où j'ai trouvé la classe :
http://www.kaourantin.net/2005/10/png-encoder-in-as3.html
Auteur du billet : Tinic Uro
Langage : ActionScript 3
Version : FlashPlayer 9, AIR 1.0
Pour l'exemple ci-dessous
Langage : ActionScript 3
Version : FlashPlayer 10, AIR 1.5 (dût à l'utilisation de la méthode "save" de la classe "FileReference")
Source / Exemple :
La source de la classe se trouve dans le fichier zip.
Voici néanmoins un exemple d'utilisation de cette classe.
import flash.net.FileReference;
//Pensez à importer votre classe PNGEncoder en fonction du package dans lequel elle se trouve
var myPicture:BitmapData = new BitmapData(100,100,true,0x00000000);
for (var i:int=0; i<100;i++) {
myPicture.fillRect(new Rectangle(100*Math.random(),100*Math.random(),10*Math.random(),10*Math.random()),0xFFFFFFFF*Math.random());
}
addChild(new Bitmap(myPicture));
//Génération de l'image et invite d'enregistrement client
var myByteArray:ByteArray = PNGEncoder.encode(myPicture);
var myFileReference:FileReference = new FileReference();
myFileReference.save(myByteArray,"myPicture.png");
Conclusion :
La classe comporte quelques corrections (très mineur), notamment la résolution de l'exception résultant de la fonction "shr" (non présente dans cette version) dont la réponse figure parmi les commentaires du site source.
Je précise à nouveau ne pas être l'auteur de cette classe.
Les éventuels remerciement ne me reviennent donc pas.