2011-07-20 72 views
0

有什麼方法可以記錄哪些Flash播放器顯示?我想每秒鐘抽樣30次framebuffer內容,但我不確定在Windows下甚至可能。如何記錄Flash播放器輸出

說明:我知道有很多軟件可以將swf轉換爲avi,但是我想以編程的方式來做,因爲我的目標不是將它們保存到我的磁盤上,如avi或sth。

+0

但是,如果你不想保存光盤上的結果,你想用它做什麼? –

+0

以其他方式玩它? –

回答

0

你可以得到任何DisplayObject的BitmapData,我想如果你有一些從Sprite或MovieClip繼承的父類,你可以在其中顯示一切,你可以獲得這個父對象的BitmapData,這將是一個「截圖」你的Flash電影。我通常使用下一個函數來獲取BitmapData;

function getBitmapData(target:DisplayObject) : BitmapData{ 
    var bd : BitmapData = new BitmapData(target.width, target.height,true, 0x0); 
    bd.draw(target); 
    return bd; 
} 

所以,你可以創建你的SWF的「截屏」,並將其保存在位圖的一些陣列或者其他任何你喜歡的方式。

+0

很酷,但我無法以任何方式訪問AS。我有swf文件已經編譯(創建或其他),並將在Flash播放器上顯示。我想要做的是以某種方式截取並在放入屏幕前抓取最終圖像。 –

+0

所以你想從swf中獲取甚至還沒有顯示的屏幕。不,你不能從閃光燈以外做到這一點。這應該違反所有可能的安全規則。 –

+0

好吧,讓我們這樣說:我有瑞士法郎,我想玩'虛擬',並以編程方式捕獲輸出 –