php合成或者创建gif动画

来源:互联网 发布:淘宝网商银行贷款入口 编辑:程序博客网 时间:2024/04/29 14:11
1. 首先需要确认GD库是否正常。
 
2. 如果是合成图片,请确保把分解的图片放在frames的文件夹里面。
 

3. GIFEncoder.class.php 类

<?phpinclude "GIFEncoder.class.php";ob_start();$board_width = 60;$board_height = 60;$pad_width = 5;$pad_height = 15;$ball_size = 5;$game_width = $board_width - $pad_width*2 - $ball_size;$game_height = $board_height-$ball_size;$x = 0;$y = rand(0,$game_height);$xv = rand(1,10);$yv = rand(1,10);$pt[] = array($x,$y);do{        $x += $xv;        $y += $yv;        if($x > $game_width){                $xv = -1*$xv;                $x = $game_width - ($x-$game_width);        }elseif($x < 0){                $xv = -1*$xv;                $x = abs($x);        }        if($y>$game_height){                $yv = -1*$yv;                $y = $game_height - ($y - $game_height);        }elseif($y<0){                $yv = -1*$yv;                $y = abs($y);        }        $pt[] = array($x,$y);}while($x!=$pt[0][0]||$y!=$pt[0][1]);$i = 0;while(isset($pt[$i])){        $image = imagecreate($board_width,$board_height);        imagecolorallocate($image, 0,0,0);        $color = imagecolorallocate($image, 255,255,255);        $color2 = imagecolorallocate($image, 255,0,0);                if($pt[$i][1] + $pad_height < $board_width){                imagefilledrectangle($image,0,$pt[$i][1],$pad_width, $pt[$i][1]+$pad_height,$color);        }else{                imagefilledrectangle($image,0,$board_width-$pad_height,$pad_width, $board_width,$color);        }        imagefilledrectangle($image,$board_width-$pad_width,0,$board_width, $board_height,$color2);        imagefilledrectangle($image,$pad_width+$pt[$i][0], $ball_size+$pt[$i][1]-$ball_size, $pad_width+$pt[$i][0]+$ball_size, $ball_size+$pt[$i][1],$color);        //imagesetpixel($image,$pt[$i][0],$pt[$i][1],$color);        imagegif($image);        imagedestroy($image);        $imagedata[] = ob_get_contents();        ob_clean();        ++$i;}$gif = new GIFEncoder(                            $imagedata,                            100,                            0,                            2,                            0, 0, 1,                            "bin"        );        Header ('Content-type:image/gif');echo $gif->GetAnimation();?>


原创粉丝点击