(PHP 5 <= 5.3.0, PECL ming SVN)
SWFBitmap->__construct — بارگذاری شی Bitmap
This function is EXPERIMENTAL. The behaviour of this function, its name, and surrounding documentation may change without notice in a future release of PHP. This function should be used at your own risk.
ساخت شی جدید SWFBitmap از file داده شده.
برای هر دو پارامتر شما میتوانید اشارهگر فایل بازگردانده شده توسط fopen() یا داده تصویر به عنوان رشته باینری به کار برید.
Note:
We can only deal with baseline (frame 0) jpegs, no baseline optimized or progressive scan jpegs!
تصاویر png مستقیما وارد نمیشوند و باید از ابزار ساخت فایل dbl ("define bits lossless") از png استفاده کنید. دلیل این کار عدم وابستگی به کتابخانه png است در ming- autoconf این مشکل را حل میکند اما هنوز اجرایی نشده است.
فایل MSK به عنوان ماسک آلفا برای تصویر JPEG.
Example #1 وارد نمودن فایل DBL
<?php
$s = new SWFShape();
$f = $s->addFill(new SWFBitmap(file_get_contents("image.dbl")));
$s->setRightFill($f);
$s->drawLine(32, 0);
$s->drawLine(0, 32);
$s->drawLine(-32, 0);
$s->drawLine(0, -32);
$m = new SWFMovie();
$m->setDimension(32, 32);
$m->add($s);
header('Content-type: application/x-shockwave-flash');
$m->output();
?>
Example #2 استفاده از ماسک آلفا
<?php
$s = new SWFShape();
// .msk file generated with "gif2mask" utility
$f = $s->addFill(new SWFBitmap(file_get_contents("alphafill.jpg"), file_get_contents("alphafill.msk")));
$s->setRightFill($f);
$s->drawLine(640, 0);
$s->drawLine(0, 480);
$s->drawLine(-640, 0);
$s->drawLine(0, -480);
$c = new SWFShape();
$c->setRightFill($c->addFill(0x99, 0x99, 0x99));
$c->drawLine(40, 0);
$c->drawLine(0, 40);
$c->drawLine(-40, 0);
$c->drawLine(0, -40);
$m = new SWFMovie();
$m->setDimension(640, 480);
$m->setBackground(0xcc, 0xcc, 0xcc);
// draw checkerboard background
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();
?>