首页 > php开发 > 5种php生成swf 文件代码

5种php生成swf 文件代码

下面这几款php生成flash文件代码,是从简单的生成swf文件到生成 flash动画文件等,每个实例都是经典的.

例一:首先开启php扩展php_ming,实例代码如下:

$f = new swffont( '_sans' ); 
$t = new swftextfield(); 
$t->setfont( $f ); 
$t->setcolor( 0, 0, 0 ); 
$t->setheight( 400 ); 
$t->addstring( 'hello world' ); 
$m = new swfmovie(); 
$m->setdimension( 2500, 800 ); 
$m->add( $t ); 
$m->save( 'hello.swf' );

例二:让文本动起来text.php,代码如下:

<?php 
$f = new swffont( '_sans' ); 
$pt = new swftextfield(); 
$pt->setfont( $f ); 
$pt->setcolor( 0, 0, 0 ); 
$pt->setheight( 400 ); 
$pt->addstring( '1000' ); 
$tt = new swftextfield(); 
$tt->setfont( $f ); 
$tt->setcolor( 192, 192, 192, 90 ); 
$tt->setheight( 350 ); 
$tt->addstring( 'points' ); 
$m = new swfmovie(); 
$m->setdimension( 2500, 800 ); 
$pts = $m->add( $pt ); 
$pts->moveto( 0, 0 ); 
$tts = $m->add( $tt ); 
$tts->moveto( 1300, 200 ); 
for( $i = 0; $i < 10; $i++ ) { 
  $m->nextframe(); 
  $pts->scaleto( 1.0 + ( $i / 10.0 ), 1.0 + ( $i / 10.0 ) ); 
} 
$m->save( 'text.swf' );

例三:绘制一些图形,绘制简单的直线 line.php,实例代码如下:

<?php 
$m = new swfmovie(); 
$m->setdimension( 300, 300 ); 
$s = new swfshape(); 
$s->setline( 10, 0, 0, 0 ); 
$s->movepento( 10, 10 ); 
$s->drawlineto( 290, 290 ); 
$m->add( $s ); 
$m->save( 'line.swf' );

例四:旋转直线,代码如下:

<?php 
$m = new swfmovie(); 
$m->setdimension( 300, 300 ); 
$s = new swfshape(); 
$s->setline( 5, 0, 0, 0 ); 
$s->movepento( -100, -100 ); 
$s->drawlineto( 100, 100 ); 
$ts = $m->add( $s ); 
$ts->moveto( 150, 150 ); 
//开源代码phprm.com 
for( $i = 0; $i < 100; $i++ ) { 
  $ts->rotate( 10 ); 
  $m->nextframe(); 
} 
$m->save( 'rotate.swf' );

例五:使用图片

文本和诸如直线、圆、弧、曲线和矩形之类的简单矢量图形都是十分优秀的,但在理想的情况下,您必须能访问这些 flash 动画中的图片,值得庆幸的是,ming 库使您可以轻松的使用图片,如下所示:

<?php
$img = new swfbitmap(file_get_contents('megan.jpg'));
$s = new swfshape();
$imgf = $s->addfill($img);
$s->setrightfill($imgf);
$s->movepento(0, 0);
$s->drawlineto($img->getwidth() , 0);
$s->drawlineto($img->getwidth() , $img->getheight());
$s->drawlineto(0, $img->getheight());
$s->drawlineto(0, 0);
$m = new swfmovie();
$m->setdimension($img->getwidth() * 2, $img->getheight() * 2);
$is = $m->add($s);
$is->moveto($img->getwidth() / 2, $img->getheight() / 2);
for ($i = 0; $i < 10; $i++) {
    $is->skewx(0.02);
    $is->skewy(-0.03);
    $m->nextframe();
}
$m->save('image.swf');


本文地址:http://www.phprm.com/develop/fs5121.html

转载随意,但请附上文章地址:-)

标签:php生成swf php生成动画

发表留言