Forum und email

Flash 用 Ming 関数

警告

この拡張モジュールは、 実験的 なものです。この拡張モジュールの動作・ 関数名・その他ドキュメントに書かれている事項は、予告なく、将来的な PHP のリリースにおいて変更される可能性があります。 このモジュールは自己責任で使用してください。

導入

Ming は省略語ではありません。Ming は、 SWF ("Flash") フォーマットのムービーを作成するための オープンソース (LGPL) のライブラリです。Ming は、 シェープ、グラディエント、ビットマップ (PNG および JPEG)、モーフィング ("変形")、 テキスト、ボタン、アクション、スプライト ("ムービークリップ")、 mp3 のストリーム出力、色変換といった Flash 4 の機能のほとんど全てをサポートしています。 現在未サポートなのは、サウンド関係のイベントのみです。

長さ、距離、大きさ等を指定する値は全て "twips" つまり、20 ユニット /ピクセル 単位であることに注意してください。しかし、実際には、Flash プレイヤーがムービーを embed/object タグで指定したピクセルサイズまたは embed されていない場合はフレーム全体にスケーリングするため、 任意のサイズになります。

Ming は、既存の PHP/libswf モジュール に対して多くの点で優れています。 Ming は、そのコードをコンパイルできる環境でならどこでも使用することが可能です。一方、 libswf のソースコードは公開されておらず、 ごくわずかなプラットフォームでのみしか利用できません。 Windows は、libswf でサポートされるプラットフォームには入っていません。 Ming は、ムービーの要素を PHP オブジェクト内に隠蔽することにより、 SWF ファイルフォーマットの細部を直接取り扱うことを回避しています。 また、Ming はメンテナンスが継続されています。 使用したい機能がある場合には、我々、 » https://ming.sourceforge.net/ まで知らせてください。

Ming は、PHP 4.0.5 で追加されました。

要件

Ming を PHP で使用するには、まず、Ming ライブラリを構築し、 インストールする必要があります。ソースコードとインストール手引が、 Ming のホームページ » https://ming.sourceforge.net/ から入手可能です。ここには、例や簡単なチュートリアル、最新のニュースもあります。

ming のアーカイブをダウンロードし、展開してください。Ming ディレクトリに移動し、make、make install を実行してください。

これにより libming.so が構築され、 /usr/lib/ にインストールされます。また、 ming.h/usr/include/ にコピーされます。インストールされるディレクトリを変更するには、 MakefilePREFIX= の行を編集してください。

インストール手順

Example#1 PHP に組み込む(Unix)

    mkdir <phpdir>/ext/ming
    cp php_ext/* <phpdir>/ext/ming
    cd <phpdir>
    ./buildconf 
    ./configure --with-ming <other config options>
PHP を通常と同様に構築、インストールしてください。必要ならば Web サーバを再起動してください。

ここで、extension=php_ming.sophp.ini ファイルに追加するか、 dl('php_ming.so'); を全ての Ming スクリプトの 先頭に追加してください。

実行時設定

設定ディレクティブは定義されていません。

リソース型

定義済み定数

以下の定数が定義されています。 この関数の拡張モジュールが PHP 組み込みでコンパイルされているか、 実行時に動的にロードされている場合のみ使用可能です。

MING_NEW (integer)
MING_ZLIB (integer)
SWFBUTTON_HIT (integer)
SWFBUTTON_DOWN (integer)
SWFBUTTON_OVER (integer)
SWFBUTTON_UP (integer)
SWFBUTTON_MOUSEUPOUTSIDE (integer)
SWFBUTTON_DRAGOVER (integer)
SWFBUTTON_DRAGOUT (integer)
SWFBUTTON_MOUSEUP (integer)
SWFBUTTON_MOUSEDOWN (integer)
SWFBUTTON_MOUSEOUT (integer)
SWFBUTTON_MOUSEOVER (integer)
SWFFILL_RADIAL_GRADIENT (integer)
SWFFILL_LINEAR_GRADIENT (integer)
SWFFILL_TILED_BITMAP (integer)
SWFFILL_CLIPPED_BITMAP (integer)
SWFTEXTFIELD_HASLENGTH (integer)
SWFTEXTFIELD_NOEDIT (integer)
SWFTEXTFIELD_PASSWORD (integer)
SWFTEXTFIELD_MULTILINE (integer)
SWFTEXTFIELD_WORDWRAP (integer)
SWFTEXTFIELD_DRAWBOX (integer)
SWFTEXTFIELD_NOSELECT (integer)
SWFTEXTFIELD_HTML (integer)
SWFTEXTFIELD_ALIGN_LEFT (integer)
SWFTEXTFIELD_ALIGN_RIGHT (integer)
SWFTEXTFIELD_ALIGN_CENTER (integer)
SWFTEXTFIELD_ALIGN_JUSTIFY (integer)
SWFACTION_ONLOAD (integer)
SWFACTION_ENTERFRAME (integer)
SWFACTION_UNLOAD (integer)
SWFACTION_MOUSEMOVE (integer)
SWFACTION_MOUSEDOWN (integer)
SWFACTION_MOUSEUP (integer)
SWFACTION_KEYDOWN (integer)
SWFACTION_KEYUP (integer)
SWFACTION_DATA (integer)

定義済みクラス

以下のクラスが定義されています。この拡張モジュールが PHP 組み込みでコンパイルされているか、実行時に動的にロードされている場合のみ 使用可能です。

目次