php创建sprite
时间:2021-07-01 10:21:17
帮助过:1人阅读
根据文件夹内的图片生成 sprite合成图
- $srcdir='./image/';
- $prefix="pic11_";
- $dst="image";
- $imagedir=scandir($srcdir);
- array_shift($imagedir);
- array_shift($imagedir);
- $width=0;
- $height=0;
- foreach ($imagedir as $key => $value) {
- $picinfo=getimagesize($srcdir.$value);
- $width=$picinfo[0]+$width;
- if ($height<$picinfo[1]) {
- $height=$picinfo[1];
- }
- }
- $image=imagecreatetruecolor($width,$height);
- imagesavealpha($image, true);
- $color=imagecolorallocatealpha($image,0,0,0,127) ;
- imagefill($image, 0, 0, $color);
- $width=0;
- $height=0;
- $css="";
- foreach ($imagedir as $key => $value) {
- $picinfo=getimagesize($srcdir.$value);
- $im=imagecreatefrompng($srcdir.$value); //创建image
- imagecopymerge($image, $im, $width, 0, 0, 0, $picinfo[0], $picinfo[1],100);
- $picname=pathinfo($srcdir.$value);
- $css=".".$prefix.$picname['filename']."{height:".$picinfo[0]."px;width:".$picinfo[1]."px;background-position: -".$width."px 0px;}".$css;
- $width=$width+$picinfo[0];
- imagedestroy($im); //销毁image
- }
- $css=$css."[class*=".$prefix."]{background-image:url('image.png');}}";
- $css=$css.".".$prefix."{background-image:url('image.png');}"; //兼容ie 系列
- file_put_contents("./".$dst.'.css',$css);
- imagepng($image,"./".$dst.'.png');
- imagedestroy($image);
- ?>
-
|