private function _flash() { $spacing = 5; $codewidth = ($this->width - $spacing * 5) / 4; $strforswdaction = ''; for ($i = 0; $i <= 3; $i++) { $strforswdaction .= $this->swfcode($codewidth, $spacing, $this->_code[$i], $i + 1); } ming_setScale(20.0); ming_useswfversion(6); $movie = new SWFMovie(); $movie->setDimension($this->width, $this->height); $movie->setBackground(255, 255, 255); $movie->setRate(31); $fontcolor = '0x' . sprintf('%02s', dechex(mt_rand(0, 255))) . sprintf('%02s', dechex(mt_rand(0, 128))) . sprintf('%02s', dechex(mt_rand(0, 255))); $strAction = "\n\t\t_root.createEmptyMovieClip ( 'triangle', 1 );\n\t\twith ( _root.triangle ) {\n\t\tlineStyle( 3, {$fontcolor}, 100 );\n\t\t{$strforswdaction}\n\t\t}\n\t\t"; $movie->add(new SWFAction(str_replace("\r", "", $strAction))); header('Content-type: application/x-shockwave-flash'); $movie->output(); }
/** * Draw an image * * The image will be inlined in the SVG document using data URL scheme. For * this the mime type and base64 encoded file content will be merged to * URL. * * @param mixed $file Image file * @param ezcGraphCoordinate $position Top left position * @param float $width Width of image in destination image * @param float $height Height of image in destination image * @return void */ public function drawImage($file, ezcGraphCoordinate $position, $width, $height) { $movie = $this->getDocument(); $imageData = getimagesize($file); if ($imageData[2] !== IMAGETYPE_JPEG && $imageData[2] !== IMAGETYPE_PNG) { throw new ezcGraphFlashBitmapTypeException($imageData[2]); } // Try to create a new SWFBitmap object from provided file $bitmap = new SWFBitmap(fopen($file, 'rb')); // Add the image to the movie $object = $this->movie->add($bitmap); // Image size is calculated on the base of a tick size of 20, so // that we need to transform this, to our tick size. $factor = $this->modifyCoordinate(1) / 20; $object->scale($factor, $factor); // Scale by ratio of requested and original image size $object->scale($width / $imageData[0], $height / $imageData[1]); // Move object to the right position $object->moveTo($this->modifyCoordinate($position->x), $this->modifyCoordinate($position->y)); // Create, set and return unique ID $object->setName($id = 'ezcGraphImage_' . $this->id++); return $id; }
#!/usr/bin/php -c. <?php $srcdir = $argv[1]; $m = new SWFMovie(7); $stream1 = new SWFVideoStream(); $m->add($stream1); $stream2 = new SWFVideoStream(); $m->add($stream2); $m->save("test02.swf");
#!/usr/bin/php -c. <?php $m = new SWFMovie(); /* SWF_SETBACKGROUNDCOLOR */ $m->setBackground(0xff, 0xff, 0xff); /* SWF_DEFINESPRITE */ /* MovieClip 1 */ $character1 = new SWFMovieClip(); /* 1 frames */ /* SWF_SHOWFRAME */ $character1->nextFrame(); /* end of clip frame 1 */ /* SWF_END */ /* SWF_PLACEOBJECT2 */ /* PlaceFlagHasCharacter */ $m->add($character1); /* PlaceFlagHasMatrix */ /* outputSWF_MATRIX is broken, so it is being skipped.. */ /* SWF_SHOWFRAME */ $m->nextFrame(); /* end of frame 1 */ /* SWF_END */ $m->save("test02.swf");
/* swfextract -p 1 -o character1.png $swf*/ $character1 = new SWFBitmap($mediadir . '/image01.png'); /* SWF_DEFINESHAPE3 */ /* Shape 2 (TYPE=3, RECT=-10,2010 -10,2010)*/ $character2 = new SWFShape(); /*1 fillstyle(s)*/ /* BitmapID: 1 */ $character2_f0 = $character2->addBitmapFill($character1, SWFFILL_CLIPPED_BITMAP); $character2_f0->scaleTo(20.0); /*1 linestyles(s)*/ $character2_l0_width = 20; $character2_l0_red = 0x0; $character2_l0_green = 0x0; $character2_l0_blue = 0x0; $character2_l0_alpha = 0xff; /* StateLineStyle: 1 */ $character2->setLine($character2_l0_width, $character2_l0_red, $character2_l0_green, $character2_l0_blue, $character2_l0_alpha); $character2->setRightFill($character2_f0); $character2->drawLine(2000, 0); $character2->drawLine(0, 2000); $character2->drawLine(-2000, 0); $character2->drawLine(0, -2000); /* SWF_PLACEOBJECT2 */ $i1 = $m->add($character2); $i1->setDepth(1); /* PlaceFlagHasMatrix */ /* SWF_SHOWFRAME */ $m->nextFrame(); /* end of frame 1 */ /* SWF_END */ $m->save("test05.swf");
#!/usr/bin/php -c. <?php $srcdir = $argv[1]; $m = new SWFMovie(9); $m->setBackground(0xcc, 0xcc, 0xcc); $s = new SWFShape(); $img = new SWFBitmap($srcdir . "/../Media/image01.dbl"); $fill = $s->addFill($img, SWFFILL_TILED_BITMAP); $s->setRightFill($fill); $w = $img->getWidth(); $h = $img->getHeight(); $s->drawLine($w, 0); $s->drawLine(0, $h); $s->drawLine(-$w, 0); $s->drawLine(0, -$h); $cm = array(); for ($i = 0; $i < 20; $i++) { $cm[$i] = 0.1; } $cmf = new SWFFilterMatrix(5, 4, $cm); $filter = new SWFFilter(SWFFILTER_TYPE_COLORMATRIX, $cmf); $bu = new SWFButton(); $bu->addCharacter($s, SWFBUTTON_UP | SWFBUTTON_HIT | SWFBUTTON_OVER | SWFBUTTON_DOWN); $item = $m->add($bu); $item->addFilter($filter); $m->save("test05.swf");
/* wind direction can only go from 0 to 360 degrees */ /* use a 1 pixel width red pen */ $im->setLine(1, 255, 0, 0); for ($i = 0; $i + 1 < $row_count; $i++) { $x1 = $i * $gxb / $row_count + $dx; $y1 = $gyb + $dy - $windd[$i] * $scale; $x2 = ($i + 1) * $gxb / $row_count + $dx; $y2 = $gyb + $dy - $windd[$i + 1] * $scale; $im->movePenTo($x1, $y1); $im->drawLineTo($x1, $y1); $im->drawLineTo($x2, $y2); } /* draw the wind speed graph */ $scale = $gyb / ($wnds_max - $wnds_min); /* use a 1 pixel width blue pen */ $im->setLine(1, 0, 0, 255); for ($i = 0; $i + 1 < $row_count; $i++) { $x1 = $i * $gxb / $row_count + $dx; $y1 = $gyb + $dy - ($winds[$i] - $wnds_min) * $scale; $x2 = ($i + 1) * $gxb / $row_count + $dx; $y2 = $gyb + $dy - ($winds[$i + 1] - $wnds_min) * $scale; $im->movePenTo($x1, $y1); $im->drawLineTo($x1, $y1); $im->drawLineTo($x2, $y2); } /* add our swf shape to the swf movie */ $i1 = $mve->add($im); $i2 = $mve->add($txt); /* output the flash content */ header('Content-type: application/x-shockwave-flash'); $mve->output(0);
#!/usr/bin/php -c. <?php $m = new SWFMovie(); $s = new SWFShape(); $s->setLine(1, 255, 0, 0, 255); $s->setRightFill(255, 255, 0, 255); $s->drawLine(100, 0); $s->drawLine(0, 40); $s->drawLineTo(0, 0); $b = new SWFButton(); $br1 = $b->addCharacter($s, SWFBUTTON_HIT | SWFBUTTON_UP | SWFBUTTON_OVER | SWFBUTTON_DOWN); $br2 = $b->addCharacter($s, SWFBUTTON_OVER | SWFBUTTON_DOWN); $br2->rotate(10); $br2->move(20, 0); $br3 = $b->addCharacter($s, SWFBUTTON_DOWN); $br3->rotate(20); $br3->move(40, 0); $d = $m->add($b); $d->moveTo(50, 100); $m->addExport($b, "ButtonExport"); $m->writeExports(); $m->nextFrame; $m->save("test02.swf"); ?>
#!/usr/bin/php -c. <?php $m = new SWFMovie(8); $morph = new SWFMorph(); $shape1 = $morph->getShape1(); $shape2 = $morph->getShape2(); $shape1->setLine(4, 25, 0, 0, 128); $shape1->movePenTo(5, 5); $shape1->drawLineTo(50, 30); $shape2->setLine(4, 25, 0, 0, 128); $shape2->movePenTo(5, 5); $shape2->drawLineTo(50, 130); $item = $m->add($morph); for ($i = 0; $i < 10; $i++) { $item->setRatio(0.1 * $i); $m->nextFrame(); } $m->save("test01.swf");
#!/usr/bin/php -c. <?php $srcdir = $argv[1]; $m = new SWFMovie(7); $stream = new SWFVideoStream($srcdir . "/../Media/video01.flv"); $stream->setDimension(200, 200); $stream->setFrameMode(SWF_VIDEOSTREAM_MODE_MANUAL); $m->add($stream); $numFrames = $stream->getNumFrames(); for ($i = 0; $i < $numFrames; $i++) { if ($i % 2) { $stream->nextFrame(); } $m->nextFrame(); } $m->save("test04.swf");
<?php $m = new SWFMovie(); $m->setDimension(400, 100); $m->setBackground(0xff, 0xff, 0xff); $logo = new SWFSprite(); $j = $m->add($logo); $j->setName("logo"); $m->add(new SWFAction("loadMovie('splash-logo.php','logo');")); $step = 0.1; for ($i = 0;; $i += $step) { if ($i > 100) { $i = 100; } $x = 400 - 400 * $i / 200 - 200; $y = 100 - 100 * $i / 200 - 50; $s = $i; $m->add(new SWFAction("logo._rotation = {$i}; logo._xScale={$s}; logo._yScale={$s}; logo._x= {$x}; logo._y={$y};")); $m->nextFrame(); $step *= 1.2; if ($i == 100) { break; } } header('Content-type: application/x-shockwave-flash'); $m->output();
#!/usr/bin/php -c. <?php $m = new SWFMovie(); $m->save("empty.swf"); $m = new SWFMovie(); $pbc1 = new SWFPrebuiltClip(fopen("empty.swf", "rb")); $m->add($pbc1); $pbc2 = new SWFPrebuiltClip(fopen("empty.swf", "rb")); $m->add($pbc2); $m->save("test01.swf");
<?php Ming_setScale(20.0); ming_useswfversion(7); $movie = new SWFMovie(); $movie->setRate(31); $movie->setDimension(400, 300); $movie->setBackground(0xcc, 0xcc, 0xcc); $filesrc1 = "jpg.jpg"; $filesrc2 = "png.png"; $filesrc3 = "gif.gif"; $filecontents1 = file_get_contents($filesrc1); $img = new SWFBitmap($filecontents1); $f1 = $movie->add($img); $f1->moveto(90, 50); $filecontents2 = file_get_contents($filesrc2); $img = new SWFBitmap($filecontents2); $f1 = $movie->add($img); $f1->moveto(10, 10); $filecontents3 = file_get_contents($filesrc3); $img = new SWFBitmap($filecontents3); $f1 = $movie->add($img); $f1->moveto(170, 80); header('Content-Type: application/x-shockwave-flash'); $movie->output(0);
#!/usr/bin/php -c. <?php $m = new SWFMovie(); $a = new SWFAction("trace('');"); $init = new SWFInitAction($a, 99); $m->add($init); $m->save("test02.swf");
#!/usr/bin/php <?php $m = new SWFMovie(8); $shape = new SWFShape(); $gradient = new SWFGradient(); $gradient->addEntry(0, 255, 0, 0, 255); $gradient->addEntry(0.25, 0x80, 0x20, 0x20, 0xff); $gradient->addEntry(0.8, 0x40, 0x40, 0x40, 0xff); $fill = $shape->addGradientFill($gradient, SWFFILL_LINEAR_GRADIENT); #$fill->moveTo(-163, -163); # this is added by swftoscript, but is wrong $shape->setLine(1, 0, 0, 0, 255); $shape->setRightFill($fill); $shape->drawLine(100, 0); $shape->drawLine(0, 100); $shape->drawLine(-100, 0); $shape->drawLine(0, -100); $m->add($shape); $m->save("test08.swf");
// get the text $t = new SWFText(); $t->setFont($f); $t->setHeight(50); $t->setColor(0, 0, 0); $t->moveTo(-$f->getWidth($title) / 2, 25); $t->addString($title); // make a button $b[$x] = new SWFButton(); $b[$x]->addShape($hit, SWFBUTTON_HIT); $b[$x]->addShape($t, SWFBUTTON_OVER | SWFBUTTON_UP | SWFBUTTON_DOWN); $b[$x++]->addAction(new SWFAction("getURL('{$link}','_new');"), SWFBUTTON_MOUSEUP); } // display them for ($x = 0; $x < $itemCount; $x++) { $i = $m->add($b[$x]); $i->moveTo($width / 2, 30); for ($j = 0; $j <= 30; ++$j) { $i->scaleTo(sqrt(sqrt($j / 30))); $i->multColor(1.0, 1.0, 1.0, $j / 30); $m->nextFrame(); } for ($j = 0; $j <= 30; ++$j) { $i->scaleTo(sqrt(sqrt(1 + $j / 30))); $i->multColor(1.0, 1.0, 1.0, (30 - $j) / 30); $m->nextFrame(); } $m->remove($i); } header('Content-type: application/x-shockwave-flash'); $m->output();
#!/usr/bin/php -c. <?php $m = new SWFMovie(8); $shape1 = new SWFShape(); $shape1->setLine2(1, SWF_LINESTYLE_FLAG_HINTING, 0, 25, 0, 0, 128); $shape1->movePenTo(5, 5); $shape1->drawLineTo(50, 30); $item = $m->add($shape1); $m->nextFrame(); $m->replace($item, $shape1); $m->nextFrame(); $m->save("test02.swf");
#!/usr/bin/php -c. <?php $srcdir = $argv[1]; $m = new SWFMovie(7); $mc = new SWFMovieClip(); $mc->setSoundStream($srcdir . "/../Media/audio01.mp3", $m->getRate()); for ($i = 0; $i < 200; $i++) { $mc->nextFrame(); } $m->add($mc); $m->nextFrame(); $m->save("test02.swf");
$s->drawLineTo($w, -$h); $s->drawLineTo(0, -$h); $s->drawLineTo(0, 0); return $s; } function text($string) { global $font; $t = new SWFText(); $t->setFont($font); $t->setColor(255, 255, 255); $t->setHeight(20); $t->addString($string); return $t; } $t = $m->add(text("Balkendiagramm mit PHP und Ming")); $t->moveTo(30, 40); $i = 0; reset($values); while (list($key, $value) = each($values)) { $text[$i] = $m->add(text($key)); $text[$i]->moveTo(50 + $i * 60, 50); $box[$i] = $m->add(box(50, 1)); $box[$i]->moveTo(30 + $i * 60, $height - 20); $box[$i]->setName("box" . $i); $i++; } for ($f = 0; $f <= $max; $f += 5) { $i = 0; reset($values); while (list($key, $value) = each($values)) {
#!/usr/bin/php -c. <?php $srcdir = $argv[1]; $mediadir = $srcdir . "/../Media"; $m = new SWFMovie(); $f = new SWFFont($mediadir . "/test.ttf"); $tf = new SWFTextField(); $tf->setFont($f); $tf->setColor(0x0, 0x0, 0x0, 0xff); $tf->setHeight(20); $m->add($tf); $m->nextFrame(); /* end of frame 1 */ $m->save("test02.swf");
<?php include_once '../init_constants.php'; // this can stay since it's only called via web ming_useswfversion(6); $parts = explode('/', $_SERVER['REDIRECT_URL']); $swf = $parts[count($parts) - 1]; $swfBase = basename($swf, '.swf'); $swfParts = explode('_', $swfBase); $height = array_pop($swfParts); $width = array_pop($swfParts); $m = new SWFMovie(); $m->setDimension($width, $height); $m->setrate(30); $m->add(new SWFAction('this.createEmptyMovieClip("container_mc", 1);')); $m->add(new SWFAction('__d = new Date();')); $m->add(new SWFAction('loadMovie("http://' . FF_SERVER_NAME . '/swf/slideshow/slide_show_prototype.swf?__dynTS="+__d.getTime(),"container_mc");')); $m->setBackground(0, 0, 0); $m->save($finalPath = PATH_HOMEROOT . PATH_SWF . '/container/dynamic/' . $swf); echo $finalPath . ' was created. <a href="javascript:history.go(-1);">Go back</a>.';
ming_useswfversion(4); $s = new SWFShape(); $f = $s->addFill(0xff, 0, 0); $s->setRightFill($f); $s->movePenTo(-500, -500); $s->drawLineTo(500, -500); $s->drawLineTo(500, 500); $s->drawLineTo(-500, 500); $s->drawLineTo(-500, -500); $p = new SWFSprite(); $i = $p->add($s); $i->setDepth(1); $p->nextFrame(); for ($n = 0; $n < 5; ++$n) { $i->rotate(-15); $p->nextFrame(); } $m = new SWFMovie(); $m->setBackground(0xff, 0xff, 0xff); $m->setDimension(6000, 4000); $i = $m->add($p); $i->setDepth(1); $i->moveTo(-500, 2000); $i->setName("box"); $m->add(new SWFAction("/box.x += 3;")); $m->nextFrame(); $m->add(new SWFAction("gotoFrame(0); play();")); $m->nextFrame(); header('Content-type: application/x-shockwave-flash'); $m->output();
$src_px = $src_celx * $cellw + $celllmargin; $src_py = $src_cely * $cellh + $celltmargin; $dst_px = $dst_celx * $cellw + $celllmargin; $dst_py = $dst_cely * $cellh + $celltmargin; if ($node['linktype'] == "0") { $connections->setLine(1, 255, 0, 0); $connections->movePenTo($src_px + 4, $src_py + 4); $connections->drawLineTo($dst_px + 4, $dst_py + 4); } else { $connections->setLine(1, 0, 200, 255); $connections->movePenTo($src_px + 4, $src_py + 4); $connections->drawLineTo($dst_px + 4, $dst_py + 4); } } } $m->add($connections); $im_n_unk = new SWFBitmap(fopen("img/node_unk.jpg", "rb")); $im_n_off = new SWFBitmap(fopen("img/node_off.jpg", "rb")); $im_n_on = new SWFBitmap(fopen("img/node_on.jpg", "rb")); $im_d_unk = new SWFBitmap(fopen("img/netdev_unk.jpg", "rb")); $im_d_off = new SWFBitmap(fopen("img/netdev_off.jpg", "rb")); $im_d_on = new SWFBitmap(fopen("img/netdev_on.jpg", "rb")); $nodes = $DB->GetAllByKey('SELECT id, name, INET_NTOA(ipaddr) AS ip, lastonline FROM vnodes', 'id'); if ($nodemap) { foreach ($nodemap as $nodeid => $node) { $button = new SWFButton(); $squareshape = new SWFShape(); $celx = $node['x']; $cely = $node['y']; $px = $celx * $cellw + $celllmargin; $py = $cely * $cellh + $celltmargin;
#!/usr/bin/php -c. <?php $m = new SWFMovie(8); $import = $m->importChar("test.swf", "test"); $m->add($import); $m->save("test02.swf");
<?php $m = new SWFMovie(); $m->setDimension(400, 100); $m->setBackground(0xff, 0xff, 0xff); $m->add(new SWFBitmap(fopen("img/xampp-logo.jpg", "rb"))); for ($i = 0; $i <= 100; $i++) { $m->add(new SWFAction("alpha = {$i};")); $m->nextFrame(); } header('Content-type: application/x-shockwave-flash'); $m->output();
<?php $s = new SWFShape(); $fp = fopen('../../intro/php-big.jpg', 'r'); $jpg = new SWFBitmap($fp); $w = $jpg->getWidth(); $h = $jpg->getHeight(); $f = $s->addFill($jpg); $f->moveTo(-$w / 2, -$h / 2); $s->setRightFill($f); $s->movePenTo(-$w / 2, -$h / 2); $s->drawLine($w, 0); $s->drawLine(0, $h); $s->drawLine(-$w, 0); $s->drawLine(0, -$h); $p = new SWFSprite(); $i = $p->add($s); for ($step = 0; $step < 360; $step += 2) { $p->nextFrame(); $i->rotate(-2); } $m = new SWFMovie(); $i = $m->add($p); $i->moveTo(230, 120); $m->setRate(100); $m->setDimension($w * 1.8, $h * 1.8); header('Content-type: application/x-shockwave-flash'); $m->output(6);
} elseif ($seccodedata['type'] == 2 && extension_loaded('ming')) { $spacing = 5; $codewidth = ($seccodedata['width'] - $spacing * 5) / 4; $strforswdaction = ''; for ($i = 0; $i <= 3; $i++) { $strforswdaction .= seccode_swfcode($codewidth, $spacing, $seccode[$i], $i + 1); } ming_setScale(20.0); ming_useswfversion(6); $movie = new SWFMovie(); $movie->setDimension($seccodedata['width'], $seccodedata['height']); $movie->setBackground(255, 255, 255); $movie->setRate(31); $fontcolor = '0x' . sprintf('%02s', dechex(mt_rand(0, 255))) . sprintf('%02s', dechex(mt_rand(0, 128))) . sprintf('%02s', dechex(mt_rand(0, 255))); $strAction = "\r\n\t_root.createEmptyMovieClip ( 'triangle', 1 );\r\n\twith ( _root.triangle ) {\r\n\tlineStyle( 3, {$fontcolor}, 100 );\r\n\t{$strforswdaction}\r\n\t}\r\n\t"; $movie->add(new SWFAction(str_replace("\r", "", $strAction))); header('Content-type: application/x-shockwave-flash'); $movie->output(); } else { $numbers = array('B' => array('00', 'fc', '66', '66', '66', '7c', '66', '66', 'fc', '00'), 'C' => array('00', '38', '64', 'c0', 'c0', 'c0', 'c4', '64', '3c', '00'), 'E' => array('00', 'fe', '62', '62', '68', '78', '6a', '62', 'fe', '00'), 'F' => array('00', 'f8', '60', '60', '68', '78', '6a', '62', 'fe', '00'), 'G' => array('00', '78', 'cc', 'cc', 'de', 'c0', 'c4', 'c4', '7c', '00'), 'H' => array('00', 'e7', '66', '66', '66', '7e', '66', '66', 'e7', '00'), 'J' => array('00', 'f8', 'cc', 'cc', 'cc', '0c', '0c', '0c', '7f', '00'), 'K' => array('00', 'f3', '66', '66', '7c', '78', '6c', '66', 'f7', '00'), 'M' => array('00', 'f7', '63', '6b', '6b', '77', '77', '77', 'e3', '00'), 'P' => array('00', 'f8', '60', '60', '7c', '66', '66', '66', 'fc', '00'), 'Q' => array('00', '78', 'cc', 'cc', 'cc', 'cc', 'cc', 'cc', '78', '00'), 'R' => array('00', 'f3', '66', '6c', '7c', '66', '66', '66', 'fc', '00'), 'T' => array('00', '78', '30', '30', '30', '30', 'b4', 'b4', 'fc', '00'), 'V' => array('00', '1c', '1c', '36', '36', '36', '63', '63', 'f7', '00'), 'W' => array('00', '36', '36', '36', '77', '7f', '6b', '63', 'f7', '00'), 'X' => array('00', 'f7', '66', '3c', '18', '18', '3c', '66', 'ef', '00'), 'Y' => array('00', '7e', '18', '18', '18', '3c', '24', '66', 'ef', '00'), '2' => array('fc', 'c0', '60', '30', '18', '0c', 'cc', 'cc', '78', '00'), '3' => array('78', '8c', '0c', '0c', '38', '0c', '0c', '8c', '78', '00'), '4' => array('00', '3e', '0c', 'fe', '4c', '6c', '2c', '3c', '1c', '1c'), '6' => array('78', 'cc', 'cc', 'cc', 'ec', 'd8', 'c0', '60', '3c', '00'), '7' => array('30', '30', '38', '18', '18', '18', '1c', '8c', 'fc', '00'), '8' => array('78', 'cc', 'cc', 'cc', '78', 'cc', 'cc', 'cc', '78', '00'), '9' => array('f0', '18', '0c', '6c', 'dc', 'cc', 'cc', 'cc', '78', '00')); foreach ($numbers as $i => $number) { for ($j = 0; $j < 6; $j++) { $a1 = substr('012', mt_rand(0, 2), 1) . substr('012345', mt_rand(0, 5), 1); $a2 = substr('012345', mt_rand(0, 5), 1) . substr('0123', mt_rand(0, 3), 1); mt_rand(0, 1) == 1 ? array_push($numbers[$i], $a1) : array_unshift($numbers[$i], $a1); mt_rand(0, 1) == 0 ? array_push($numbers[$i], $a1) : array_unshift($numbers[$i], $a2); } } $bitmap = array(); for ($i = 0; $i < 20; $i++) { for ($j = 0; $j < 4; $j++) {
#!/usr/bin/php -c. <?php $srcdir = $argv[1]; $mediadir = $srcdir . "/../Media"; $m = new SWFMovie(); $f = new SWFFont($mediadir . "/font01.fdb"); $t = new SWFText(1); $t->setFont($f); $t->setHeight(20); $t->setColor(0x0, 0x0, 0xff); $t->moveTo(100, 100); $t->addString("Static Text"); $tf = new SWFTextField(SWFTEXTFIELD_NOEDIT); $tf->setFont($f); $tf->setHeight(20); $tf->setColor(0xff, 0x0, 0x0); $tf->addString("Readonly Textfield"); $m->add($t); $it = $m->add($tf); $it->moveTo(100, 120); $m->nextFrame(); /* end of frame 1 */ $m->save("test05.swf");
function imageSWF() { /* parse arguments */ $numargs = func_num_args(); $image = func_get_arg(0); $swfname = ""; if ($numargs > 1) { $swfname = func_get_arg(1); } /* image must be in jpeg and convert jpeg to SWFBitmap can be done by buffering it */ ob_start(); imagejpeg($image); $buffimg = ob_get_contents(); ob_end_clean(); $img = new SWFBitmap($buffimg); $w = $img->getWidth(); $h = $img->getHeight(); $movie = new SWFMovie(); $movie->setDimension($w, $h); $movie->add($img); if ($swfname) { $movie->save($swfname); } else { $movie->output; } }
<?php $s = new SWFShape(); $s->setLine(4, 0x7f, 0, 0); $s->setRightFill($s->addFill(0xff, 0, 0)); $s->movePenTo(10, 10); $s->drawLineTo(310, 10); $s->drawLineTo(310, 230); $s->drawCurveTo(10, 230, 10, 10); $m = new SWFMovie(); $m->setDimension(320, 240); $m->setRate(12.0); $m->add($s); $m->nextFrame(); header('Content-type: application/x-shockwave-flash'); $m->output();