Flash animation software produced by Macromedia has now become a very popular performance tool on Web pages, and website developers use it to arouse the interest of viewers. Unfortunately, just using ActionScript to create animations is very restrictive. Macromedia has announced that it intends to abandon the Flash Generator product and switch to Cold Fusion that supports Flash MX. Where will our website go? Now, we can use the Ming PHP library to easily dynamically create Flash animations and integrate them seamlessly with our code. We can create animations with various effects based on the data in the database.
Ming animation library first appeared in PHP4.05 version, replacing the previous version of LibSwf module. The Ming library is written in C and supports multiple languages. Let's first look at how to use PHP to create animations. The library is easy to use and tightly integrated with PHP. However, the library is still in the experimental stage. The current version is 0.2a. Online tutorials, examples, and help manuals allow us to learn easily. The functions in Ming are well organized. Organized and easy to find for PHP and Flash developers. Using PHP and Ming libraries not only gives our website a gorgeous decoration, but also reduces the cost and complicated labor of developing Flash animations.
There are two ways to use the Ming library. We can embed it into PHP (for Unix platforms), or we can run it as a PHP module. The functions inside support all platforms, and no instance is needed when using it. change. If we run the Ming library as a PHP module, we must explicitly call the Ming library, just like other modules, and then use the functions in the library. Since the module must be loaded before use, there will be a slight performance drop compared to compiling Ming as an internal function.
The Ming library is completely free. We can download it from the creator’s website. The address is: http://www.opaque.net/ming/. The website has detailed user manuals and help. Before use, please First, take a look at the installation and configuration instructions. The address is: http://www.opaque.net/ming/install.html. In addition, there are also user manuals and detailed instructions on the PHP website, the address is: http://www.php.net/ming.
Once we have the Ming library installed and configured correctly, we can create a PHP object, call Ming functions from PHP, and define our animation by calling functions and properties. There are 13 objects in the PHP module, which provide some functions of Flash, and there are also several commands that can control the parameter settings during release. Let's see how to use it to create animations.
Use Macromedia Flash to create animations in SWF format. We first create some symbols. Flash has three types of symbols: graphics, animation clips, and buttons. Once we create these symbols, we can copy them into the scene. Each copy is called an instance, and we can put as many instances into our scene as we want. Next, you can define the behavior of these objects, that is, define the actions and motion trajectories, and also define the parameters of the animation, such as size and background color. If necessary, you can save it as a .SWF file.
Use PHP's Ming library to create Flash animations. Like Macromedia Flash, you must first create some symbols. These symbols are instances of PHP objects, then define the positions and mutual relationships of these objects in the animation scene, and then define the objects in each The action within a frame ultimately defines the animation itself. We can directly output the SWF to the browser, or save it as a file in SWF format for later use. The advantage of Flash is the graphical user interface. Using the Ming library not only allows easier control of objects, but also has unlimited scalability and reusability.
Let’s use a complete example to see how to use the Ming library:
/* First create a symbol and fill it with color*/
$square = new SWFShape();
$sqfill = $square->addFill(0, 0, 0xff);
$square->setRightFill($sqfill);
$square-> movePenTo(-250,-250);
$square->drawLineTo(250,-250);
$square->drawLineTo(250,250);
$square->drawLineTo(-250,250 );
$square->drawLineTo(-250,-250);
/* Use the above symbols in animation clips and add some scripts*/
$sqclip = new SWFSprite ();
$i = $sqclip->add($square);
$i->setDepth(1);
$sqclip->setframes(25);
$ sqclip->add(new SWFAction("stop();"));
$sqclip->nextFrame();
$sqclip->add(new SWFAction("play();") );
for($n=0; $n<24; $n++) {
$i->rotate(-15);
$sqclip->nextFrame();
}
/* Create button below*/
function rect($r, $g, $b) {
$s = new SWFShape();
$s- >setRightFill($s->addFill($r, $g, $b));
$s->drawLine(500,0);
$s->drawLine(0,500);
$s->drawLine(-500,0);
$s->drawLine(0,-500);
return $s;
}
$ b = new SWFButton();
$b->addShape(rect(0xff, 0, 0), SWFBUTTON_UP | SWFBUTTON_HIT);
$b->addShape(rect(0, 0xff, 0), SWFBUTTON_OVER);
$b->addShape(rect(0, 0, 0xff), SWFBUTTON_DOWN);
$b->addAction(new SWFAction("setTarget('/box'); gotoandplay(2 );"), SWFBUTTON_MOUSEDOWN);
/* Create the animation below and add the above symbols and buttons*/
$m = new SWFMovie();
$m-> ;setDimension(4000,3000);
$i = $m->add($sqclip);
$i->setDepth(3);
$i->moveTo (1650, 400);
$i->setName("box");
$i = $m->add($b);
$i->setDepth (2);
$i->moveTo(1400,900);
/* Finally, we output it to the browser*/
header('Content-type : application/x-shockwave-flash');
$m->output();
?>
Okay, run it on your machine and see if it works Just like those created with Flash! For more function descriptions, please refer to the operating manual.