swfrender
из swftools работает для основных файлов SWF.
swfdec-thumbnailer
из swfdec-gnome работает, хотя получает только первый кадр SWF.
Чтобы получить любой кадр из swf с помощью swfdec, см. Фрагмент кода C в следующем списке рассылки сообщение.
gnash
из gnash также работает 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
См. Также следующее руководство для конвейера командной строки.
Для вызова внешних программ из php используйте команду exec
, задокументированную здесь.
Обратите внимание, что по соображениям безопасности важно избегать аргументов, переданных в exec
, с помощью другой команды, например escapeshellcmd
или escapeshellarg
, из соображений безопасности.
После преобразования в формат изображения для одного кадра или для всего кадра вы не сможете запустить сценарий действия. Другие инструменты, отличные от GNU / Linux, поддерживают экспорт сценария действия из SWF.
Если SWF, который вы экспортируете в PNG, слишком сложен для других инструментов, вы можете использовать подключаемый модуль Flash или Gnash
и Xvfb
вместе с программным обеспечением для захвата экрана для захвата кадров изображения SWF или видеоформата, такого как avi. Затем вы можете извлечь изображения из видео формата.
Этот метод виртуального фреймбуфера будет поддерживать сложные SWF-файлы, хотя он требует большой работы, так как вам нужно использовать либо Gnash, Xvfb и Screen Capture, либо браузер, Xvfb и Selenium, если вы хотите захватить определенный набор мыши / клавиатуры. взаимодействие с SWF.
Gnash с виртуальным буфером кадров и без него должен загружать ActionScript перед экспортом, но могут возникнуть проблемы со сложным ActionScript. Плагин Flash с виртуальным буфером кадра загрузит ActionScript перед экспортом.
Также см. Следующие вопросы StackOverFlow, которые, по вашему мнению, являются дубликатом
person
Appleman1234
schedule
10.03.2012