1フレームのSWFファイルを取得し、PHPを介してPNGに変換できるようにしたいと思います。コマンドラインツールを使用してこれを実行しても問題ありません。
どうすればこれを行うことができますか? ActiveXライブラリ を見つけましたが、レイヤーが多すぎるようです。また、Gnashには PNG出力クラス があるように見えますが、独自の深いコーディングを行わずにコマンドラインからそれを取得する方法を理解することはできません。他に利用できる賢い解決策はありますか?ありがとう!
EDIT:明確にするために、これは私が一度だけ実行できるようにしたい1回限りのタスクではありません。 PHPスクリプトでこのタスクをコマンドで実行できるようにしたいと思います。ありがとうございます!
別の編集:もう1つの説明。これは、たとえば、ユーザーがFlashで描画を行う状況ではありません。生の1フレームSWFファイルをダウンロードしていますが、ダウンロード時間を短縮するためにPNGコピーを保存したいと考えています。そのような作業は可能ですか?再度、感謝します!
swftools を使用できます。swfrender file.swf -X pixelsize -Y pixelsize -o output.png
-X -Yパラメーター間の1つだけが指定されている場合、比率が尊重されます
実際にはサーバーベースのソリューションではありませんが、SWFをPNGシーケンスに変換するAIRユーティリティを開発しました: http://swfrenderer.kurst.co.uk/
使用しているswfのタイプに応じて、コマンドラインからFFmpegを試すことができます。
ffmpeg -i movie.swf -f image2 -vcodec png movie%d.png