2011-05-30 18 views
6

का उपयोग कर पीएनजी को कैसे निर्यात करें मैं इस श्रेणी का उपयोग कर पारदर्शी पीएनजी फाइलों को निर्यात करने की कोशिश कर रहा हूं: com.adobe.images.PNGEncoder;as3 | एडोब एयर

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(); 

सभी ठीक काम करता है - पारदर्शी मुद्दे को छोड़कर ...

मैं फ्लैश के मंच रंग पारदर्शी तो यह काम करेगा होना मिल सकता है - लेकिन दुर्भाग्य से - ऐसी कोई विकल्प नहीं है।

वहाँ किसी भी विकल्प मुझे याद आ रही हैं?

+0

इसके अलावा, आप पुस्तकालय एन्कोडिंग बेहतर उपयोग करने के लिए सलाह देते हैं: http://www.blooddy.by/en/क्रिप्टो/ –

उत्तर

6

आपको एक पारदर्शी पृष्ठभूमि के साथ बिटमैपडाटा उदाहरण बनाने की आवश्यकता है। आप ऐसा constructor में पारदर्शी तर्क और एक अल्फा घटक (हेक्स में ARGB) के साथ एक रंग भरने के माध्यम से:

var pngSource:BitmapData = new BitmapData (stage.stageWidth, stage.stageHeight,true,0x00FFFFFF);//'transparent white' 
+1

आप रंग पैरामीटर को '0' पर सेट कर सकते हैं। रंग * पारदर्शी काला * होगा, फिर – NemoStein

+0

@NemoStein वास्तव में :) –

+0

वाह - एक आकर्षण की तरह काम किया! धन्यवाद :) – Alon

संबंधित मुद्दे