1 / 15

Flash SWF ファイル書き換え PHP extension

Flash SWF ファイル書き換え PHP extension. 2008 年 7 月 21 日 よや <yoya@awn.jp>. はじめに. Flash SWF (Flash の実行ファイル ) を PHP で書き換える為の extension を作成しました。 SWF Editor ( 略称 swfed ) という名前です。 説明の順番 Flash SWF について swfed の機能紹介 インストール方法 FAQ 、 そして TODO. Flash SWF ファイルって何?. Macromedia Flash の実行ファイル

zahina
Download Presentation

Flash SWF ファイル書き換え PHP extension

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Flash SWFファイル書き換え PHP extension 2008年7月21日 よや<yoya@awn.jp>

  2. はじめに • Flash SWF (Flash の実行ファイル)を PHP で書き換える為の extension を作成しました。 • SWF Editor (略称 swfed)という名前です。 • 説明の順番 • Flash SWF について • swfedの機能紹介 • インストール方法 • FAQ 、そして TODO

  3. Flash SWF ファイルって何? • Macromedia Flash の実行ファイル • HTML の object タグとかで指定する “~.swf” といった名前のファイル • IE や Firefox 等のブラウザは、この ~.swfファイルの中に含まれるコンテンツや命令コードを読んで、表示したり音を鳴らしたり、ボタンやマウスに反応したりする。

  4. Flash SWF ファイルの構造 • ヘッダ+TLC形式ブロックの連結 (あとで Wikiのメモからコピー) • Bit 処理とzlib処理が出来れば OK

  5. swfedで出来る事 • Flash SWF ファイルに対して • 画像を取り出せる • 画像の差し替えができる (マスク画像も対応!) • テキストボックスの文字列を取り出せる • テキストボックスのの差し替えができる (変数を設定すればAcrionScriptから参照できる) • スクリプトの定数抽出 (開発中) • Byte code の disassemble

  6. swfedで画像を入れ替える

  7. swfedでテキストボックスの文字列を入れ替えるswfedでテキストボックスの文字列を入れ替える

  8. インストール方法 • PHP extension の一般的なインストール方法と同じ • これだけ。Apache 越しに使うなら graceful か stop & start が必要。 % wget –r –np http://diary.awm.jp/~yoya/data/2008/07/18/swfed % cd diary.awm.jp/~yoya/data/2008/07/18/swfed % phpize % ./configure % make % cp modules/swfed.so (PHP exntension dir)

  9. 遊び方(1)好きなキャラクタを埋め込んで遊ぶ

  10. 遊び方(2) 好きな文字列を入れて遊ぶ

  11. 遊び方(3) 中の文字列を見てニヤニヤする • Disassemble の機能も

  12. F AQ (よくある質問) • Extension じゃなくても いいじゃん! • ビット処理を phpで書くのが面倒になった • mingを使わないの? • SWF ファイルを load して一部のデータだけ入れ替えをしたかった • swfmillを使えば? • XML に落して編集はさすがに重たそう • ActionScript で画像入れ替えできるけど? • (携帯の)Flash Lite1.1 では出来ない。

  13. swfedのアドバンテージ • 必要な部分だけ書き換えるので、無駄がない。(実装的な無駄はごめんなさい) • 仕事の分担がしやすい。 • 雛型Flashを Flash 職人が作って、動的に画像/テキストを入れ替える処理を PHP プログラマが作るとか。(mingだとこれが難しい) • 自分(yoya)が作ってるので好きに機能を追加できる。 • ベクター画像入れ替えに挑戦中

  14. TODO(今後の課題) • ソースのRepository を決めたい。(cvs/svn管理されていない) • ライセンスを決めたい。(少なくとも利用を制限するようなライセンスにはしたくない) • Windows DLL 化 • 音声対応 (midi とか mp3 とか入れ替えたい)

  15. 最後に • Macromedia 様すてきすぎ (SWF ファイルの構造が素直なので、parse 処理を書くのが楽しい) • Klab様さいこー! (PHP extension の作り方は Klab様のサイトで勉強しました) • あとの細かい話は以下の URL にて • http://pwiki.awm.jp/~yoya/?swfed

More Related