SWFBitmap
(PHP 4 >= 4.0.5)
SWFBitmap -- Bitmap (pixelgrafikus) objektum betöltése
Leírás
new
swfbitmap ( string fájlnév [, int alfacsatorna kép fájlnév] )
Figyelem |
Ez a függvény
KÍSÉRLETI JELLEGGEL MŰKÖDIK. A függvény
működése, neve, bármi amit a függévénnyel kapcsolatban
dokumentáltunk megváltozhat egy későbbi PHP kiadásban minden
figyelmeztetés nélkül. Ezt a függvényt csak a saját
felelősségedre használd! |
Az swfbitmap() függvény egy SWFBitmap típusú
objektumot hoz létre egy a fájlnév
paraméterben megadott Jpeg vagy DBL típusú képfájlból.
Lehetőség van egy alphafilename
alfacsatorna kép fájlnév paraméter
megadására is, ami a kép áttetszőségét képes szabályozni.
Megjegyzés:
Kizárólag "baseline (frame 0)" formátumú jpeg képek alkalmazása
lehetséges, a "baseline optimized" illetve a progresszív kódolású
képfájlok nem alkalmazhatók.
Az SWFBitmap objektumokon a következő műveletek végezhetők:
swfbitmap->getwidth() és swfbitmap->getheight().
Nincs közvetlen lehetőség png típusú képek betöltésére. Azokat
előbb a png2dbl segédprogrammal dbl formátumúra kell alakítani.
Ennek az oka az, hogy a fejlesztő nem kívánta a Ming függvénykönyvtárat
a png támogatástól függővé tenni.
Példa 1. PNG képfájlok importálása
<?php $s = new SWFShape(); $f = $s->addFill(new SWFBitmap("png.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(); ?>
|
|
Lássuk, hogyan is kell alfacsatorna maszkot tenni a jpeg képre:
Példa 2. swfbitmap() példa
<?php
$s = new SWFShape();
// az .msk fájl a "gif2mask" segédprogrammal lett előállítva $f = $s->addFill(new SWFBitmap("alphafill.jpg", "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);
// "rácsozat" megrajzolása 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(); ?>
|
|