Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

as3 | How to export PNG using Adobe AIR

I am trying to export transparent PNG files using this class: com.adobe.images.PNGEncoder;

var pngSource:BitmapData = new BitmapData (stage.stageWidth, stage.stageHeight);
pngSource.draw(stage);
var ba:ByteArray = PNGEncoder.encode(pngSource);
var file:File = File.desktopDirectory.resolvePath("test.png");
var fileStream:FileStream = new FileStream();
fileStream.open(file, FileMode.WRITE);
fileStream.writeBytes(ba);
fileStream.close();

All works fine - except the transparent issue...

If I could get Flash's stage color be transparent then it will work - but unfortunatly - there is no such option.

Are there any options I am missing?

like image 724
Alon Avatar asked May 30 '11 12:05

Alon


1 Answers

You need to make a BitmapData instance with a transparent background. You do that through the transparent argument in the constructor and a fill color with an alpha component(ARGB in hex):

var pngSource:BitmapData = new BitmapData (stage.stageWidth, stage.stageHeight,true,0x00FFFFFF);//'transparent white'
like image 166
George Profenza Avatar answered Sep 28 '22 03:09

George Profenza