Classe pngencoder (as3)

Description

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.

Codes Sources

A voir également

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.