如何在Linux上將swf呈現爲圖像文件? 我需要能夠將其他swfs加載到swf中並運行actionscript代碼。將swf呈現爲PNG或其他圖像格式
它甚至可能在Linux上?我需要從PHP中完成,如果我必須使用命令行工具,那很好。
如何在Linux上將swf呈現爲圖像文件? 我需要能夠將其他swfs加載到swf中並運行actionscript代碼。將swf呈現爲PNG或其他圖像格式
它甚至可能在Linux上?我需要從PHP中完成,如果我必須使用命令行工具,那很好。
swfrender
from swftools適用於基本的SWF文件。
swfdec-thumbnailer
from swfdec-gnome雖然只能得到swf的第一幀,
要使用swfdec從swf獲取任何幀,請參閱以下郵件列表中的C代碼片段post。
gnash
from gnash also works gnash -s<scale-image-factor> --screenshot last --screenshot-file output.png -1 -r1 input.swf
,swf的最後一張圖片。
ffmpeg
從ffmpeg也適用於一些SWF格式ffmpeg -i movie.swf -f image2 -vcodec png movie%d.png
也看到了一個命令行管道下面guide。
爲了從php調用外部程序,請使用exec
命令記錄here。
請注意,出於安全原因,爲安全起見,使用另一個命令(如escapeshellcmd
或escapeshellarg
)傳遞給exec
的參數很重要。
無論是單幀還是全幀,轉換爲圖像格式後,都無法運行動作腳本。其他非GNU/Linux工具支持從SWF中導出動作腳本。
如果要導出到PNG的SWF是太複雜了其他工具比你可以使用Flash插件或Gnash
和Xvfb
與屏幕捕捉軟件一起拍攝的AVI視頻格式的SWF的任何圖像幀或。然後你可以從視頻格式中提取圖像。
這個虛擬framebuffer方法將支持複雜的SWF文件,雖然它需要大量的工作,因爲如果你想捕獲一個特定的集合,你需要使用Gnash和Xvfb和Screen Capture,或者瀏覽器,Xvfb和Selenium鼠標/鍵盤與SWF的交互。
帶和不帶虛擬FrameBuffer的Gnash應該在導出之前加載ActionScript,但可能會遇到複雜ActionScript的問題。帶有Virtual Framebuffer的Flash插件將在導出之前加載ActionScript。
另請參閱下面的StackOverflow的問題,你的問題是
除了我需要swf中的actionscript可以運行外,我知道swfrender不能用於我想要的功能。其他人是否允許actionscript運行? – 2012-03-10 16:44:25
一旦導出到PNG,無論使用哪種工具,生成的PNG圖像或動畫都無法運行動作。 – Appleman1234 2012-03-10 21:58:42
不,我的意思是說,在導出Flash影片之前,它需要運行代碼來顯示我想要的內容。 – 2012-03-12 00:34:59
嘗試此空氣應用http://swfrenderer.kurst.co.uk
它通過幀
的[轉換SWF到PNG(
可能重複http://stackoverflow.com/questions/2001946/convert-swf-to-渲染SWF幀PNG) – ruakh 2012-03-11 01:37:05