-
Notifications
You must be signed in to change notification settings - Fork 0
swfdowngrade.php
Yoshihiro Yamazaki edited this page Aug 31, 2024
·
2 revisions
Flash SWF ファイルのバージョンを下げるツールです。 Adobe CS6 が使えなくなり、Adobe Animator が出力する SWFファイルはバージョンが新しいので、
- ガラケーや昔のガジェットの Flash Player では表示できない
- swftools など昔のツールで変換できない
といった問題に対して、力づくで対処するものです。

% composer require yoya/io_swf
(略)
% php vendor/yoya/io_swf/sample/swfversion.php -f ver10.swf
SWF Version:12 Check Version:12
% php vendor/yoya/io_swf/sample/swfdowngrade.php -f ver10.swf -v 4 > ver4.swf
% php vendor/yoya/io_swf/sample/swfversion.php -f ver4.swf
SWF Version:4 Check Version:4
- SWF Header のバージョンを下げる
- SWF Tags のバージョンも下げる。新しいバージョンでしか使えないタグを古いバージョンのタグに変換する為、情報要素が減る可能性があります。

-
SWF DoABC(ActionScript3) を DoAction(ActionScript1/2) に変換する。(今のところ stop と gotoAndPlay のみ)。
-
DoAction を対応する Sprite Tag の中に埋める。SymbolClass Tag にある SpriteID:ClassName 対応表を元に DoABC 中の対応する Class, Method を特定して、method と同様の処理をする DoAction Tag を生成。 結構ややこしい。
