我需要找到一種方法來複制掩蓋的位圖。我在舞臺上有一個位圖,並且用戶繪製了一個用作掩碼的精靈。我需要捕獲/複製蒙版區域位圖,保持由蒙版創建的透明度,最終編碼爲png。如何複製在動作腳本中保持遮罩透明度的遮罩位圖?
我找不到有關如何使用copyPixels()或任何其他方向完成此操作的文檔。
預先感謝任何幫助 -
b
我需要找到一種方法來複制掩蓋的位圖。我在舞臺上有一個位圖,並且用戶繪製了一個用作掩碼的精靈。我需要捕獲/複製蒙版區域位圖,保持由蒙版創建的透明度,最終編碼爲png。如何複製在動作腳本中保持遮罩透明度的遮罩位圖?
我找不到有關如何使用copyPixels()或任何其他方向完成此操作的文檔。
預先感謝任何幫助 -
b
我做了一個簡單的測試,似乎工作:
var square:Sprite = new Sprite();
var circle:Sprite = new Sprite();
var holder:Sprite = new Sprite();
square.graphics.beginFill(0,.5);
square.graphics.drawRect(0,0,100,100);
square.graphics.endFill();
circle.graphics.beginFill(0);
circle.graphics.drawCircle(0,0,50);
circle.graphics.endFill();
addChild(holder);
holder.addChild(square);
holder.addChild(circle);
square.mask = circle;
var cloneData:BitmapData = new BitmapData(holder.width,holder.height,true,0x00FFFFFF);
cloneData.draw(holder);
var clone:Bitmap = new Bitmap(cloneData);
addChild(clone);
clone.x = 30;
我創建一個BitmapData和使用draw()方法做一個克隆。 關鍵的事情似乎是BitmapData構造函數中的最後兩個參數。 後我通過holder.width和holder.height,我指定我想要的位圖數據是透明(真),並有填充˚FULL透明白色(至0x00FFFFFF)在ARGB(阿爾法 - 紅 - 綠 - 藍色)
希望這會有所幫助:)
感謝您的幫助,我在短時間內退出了另一個項目,但如果我以這種方式工作,將回到接受狀態... – WillyCornbread 2010-01-15 14:06:20
ARGB信息特別有用,並且允許我解決我的問題。再次感謝您的幫助! – WillyCornbread 2010-01-20 01:19:11
很高興我能幫忙^ _ ^ – 2010-01-20 01:47:30
你怎麼掩蓋? mask屬性還是blendMode? – spender 2010-01-06 23:46:21