SWFBitmap::__construct

(PHP 5 < 5.3.0, PECL ming SVN)

SWFBitmap::__constructビットマップオブジェクトを読み込む

説明

SWFBitmap::__construct ( mixed $file [, mixed $alphafile ] )
警告

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

新しい SWFBitmap オブジェクトを、指定した file から作成します。

パラメータ

どちらのパラメータについても、 fopen() が返すファイルポインタか 画像データのバイナリ文字列のいずれかを指定できます。

file

注意:

baseline (frame 0) jpeg にのみ対応しています。baseline を最適化した jpeg やプログレッシブ jpeg には対応していません!

png 画像を直接読み込むことはできません。png2dbl を使用して、png から dbl ("define bits lossless") ファイルを作成する必要があります。 この理由は、ming に png ライブラリの依存性を持ち込みたくないからです。 これは autoconf が解決すべき問題ですが、いまのところ解決されていません。

alphafile

JPEG 画像のアルファマスクとして使用する MSK ファイル。

例1 DBL ファイルのインポート

<?php
$s 
= new SWFShape();
$f $s->addFill(new SWFBitmap(file_get_contents("image.dbl")));
$s->setRightFill($f);

$s->drawLine(320);
$s->drawLine(032);
$s->drawLine(-320);
$s->drawLine(0, -32);

$m = new SWFMovie();
$m->setDimension(3232);
$m->add($s);

header('Content-type: application/x-shockwave-flash');
$m->output();
?>

例2 アルファマスクの使用法

<?php

$s 
= new SWFShape();

// .msk ファイルは "gif2mask" ユーティリティで作成します
$f $s->addFill(new SWFBitmap(file_get_contents("alphafill.jpg"), file_get_contents("alphafill.msk")));
$s->setRightFill($f);

$s->drawLine(6400);
$s->drawLine(0480);
$s->drawLine(-6400);
$s->drawLine(0, -480);

$c = new SWFShape();
$c->setRightFill($c->addFill(0x990x990x99));
$c->drawLine(400);
$c->drawLine(040);
$c->drawLine(-400);
$c->drawLine(0, -40);

$m = new SWFMovie();
$m->setDimension(640480);
$m->setBackground(0xcc0xcc0xcc);

// チェッカー盤の背景を描きます
for ($y=0$y<480$y+=40) {
  for (
$x=0$x<640$x+=80) {
    
$i $m->add($c);
    
$i->moveTo($x$y);
  }

  
$y+=40;

  for (
$x=40$x<640$x+=80) {
    
$i $m->add($c);
    
$i->moveTo($x$y);
  }
}

$m->add($s);

header('Content-type: application/x-shockwave-flash');
$m->output();
?>