2010-03-15 12 views
1
public function bmdToStr(bmd:BitmapData,width:int,height:int):String { 
    var encoder:JPEGEncoder = new JPEGEncoder(); 
    var encBytes:ByteArray = encoder.encode(bmd); 
    return ImageSnapshot.encodeImageAsBase64(new ImageSnapshot(width,height,encBytes,"image/jpeg")); 
    } 

A partir de maintenant, je crée l'image JPEG de BitmapData comme ci-dessus.
Je peux aussi utiliser PNGEncoder pour créer des images PNG.
Comment créer des fichiers .bmp ou .gif?Création de fichiers GIF/BMP avec flex

Répondre

0

pourquoi voudriez-vous créer BMP? et pour la même question, pourquoi créeriez-vous un GIF?

la seule chose intéressante à propos de GIF est, il prend en charge l'animation. à part ça, c'est simplement déprécié. Si vous voulez une compression sans perte, utilisez le format PNG, si la taille est plus importante, utilisez JPG. Si c'est vraiment l'animation que vous voulez, je vous suggère de regarder GIF Animation Encoder.

et BMP ne vaut absolument pas la peine. c'est juste énorme pour les images 24 bits (32 avec transparence). une image 800x600 donnera 1,4 MB. BMP n'offre aucun avantage, sauf qu'il ne nécessite pas de décompression pour l'affichage, mais de nos jours cela ne fait pratiquement aucune différence, surtout pour le web.

Si vous pensez vraiment, vous en avez besoin, alors vous devriez simplement consulter les spécifications BMP. c'est vraiment simple.