php创建sprite


Posted in PHP onFebruary 11, 2014
<?php
$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);
?>
<link rel="stylesheet" type="text/css" href="./image.css">
<!-- <img src="./image.png"> -->
<body style="background-color:#eee">
 <div class="pic11_css3">
</div>
<div class="pic11_firefox">
</div>
<div class="pic11_chrome">
</div>
<span class="css3">
</span>
<span class="sprite firefox">
</span>
</body>
PHP 相关文章推荐
php set_magic_quotes_runtime() 函数过时解决方法
Jul 08 PHP
一些php技巧与注意事项分析
Feb 03 PHP
用PHP实现浏览器点击下载TXT文档的方法详解
Jun 02 PHP
PHP文件大小格式化函数合集
Mar 10 PHP
通过curl模拟post和get方式提交的表单类
Apr 23 PHP
php单文件版在线代码编辑器
Mar 12 PHP
Laravel 5 框架入门(二)构建 Pages 的管理功能
Apr 09 PHP
PHP实现基于mysqli的Model基类完整实例
Apr 08 PHP
PHP 类与构造函数解析
Feb 06 PHP
PHPCrawl爬虫库实现抓取酷狗歌单的方法示例
Dec 21 PHP
PHP实现用session来实现记录用户登陆信息
Oct 15 PHP
PHP 图片处理
Sep 16 PHP
PHP循环结构实例讲解
Feb 10 #PHP
更改localhost为其他名字的方法
Feb 10 #PHP
php 获取SWF动画截图示例代码
Feb 10 #PHP
php导入csv文件碰到乱码问题的解决方法
Feb 10 #PHP
php判断正常访问和外部访问的示例
Feb 10 #PHP
php利用单例模式实现日志处理类库
Feb 10 #PHP
PHP遍历并打印指定目录下所有文件实例
Feb 10 #PHP
You might like
Linux编译升级php的详细方法
2013/11/04 PHP
Zend Framework教程之Zend_Form组件实现表单提交并显示错误提示的方法
2016/03/21 PHP
javascript实现上传图片并预览的效果实现代码
2011/04/11 Javascript
利用JS解决ie6不支持max-width,max-height问题的方法
2014/01/02 Javascript
js获取url中&quot;?&quot;后面的字串方法
2014/05/15 Javascript
JS常用字符串处理方法应用总结
2014/05/22 Javascript
jQuery中JSONP的两种实现方式详解
2016/09/26 Javascript
javascript防篡改对象实例详解
2017/04/10 Javascript
xmlplus组件设计系列之文本框(TextBox)(3)
2017/05/03 Javascript
vue+vue-validator 表单验证功能的实现代码
2017/11/13 Javascript
jQuery实现滚动效果
2017/11/17 jQuery
微信小程序实现图片上传、删除和预览功能的方法
2017/12/18 Javascript
js实现前面自动补全位数的方法
2018/10/10 Javascript
Vue项目安装插件并保存
2019/01/28 Javascript
JS异步宏队列微队列原理详解
2020/09/09 Javascript
vant-ui框架的一个bug(解决切换后onload不触发)
2020/11/11 Javascript
javascript全局自定义鼠标右键菜单
2020/12/08 Javascript
Python使用getpass库读取密码的示例
2017/10/10 Python
解决Python中定时任务线程无法自动退出的问题
2019/02/18 Python
python小程序基于Jupyter实现天气查询的方法
2020/03/27 Python
Python中and和or如何使用
2020/05/28 Python
CSS3 实现飘动的云朵动画
2020/12/01 HTML / CSS
大学生工作推荐信范文
2013/12/02 职场文书
服装设计专业毕业生求职信
2014/04/09 职场文书
《彩色世界》教学反思
2014/04/12 职场文书
《水乡歌》教学反思
2014/04/24 职场文书
低碳环保演讲稿
2014/08/28 职场文书
法人代表身份证明书及授权委托书
2014/09/16 职场文书
会议接待欢迎标语
2014/10/08 职场文书
大学学生个人总结
2015/02/15 职场文书
营运督导岗位职责
2015/04/10 职场文书
2015年学校政教工作总结
2015/07/20 职场文书
pycharm debug 断点调试心得分享
2021/04/16 Python
CSS实现单选折叠菜单功能
2021/11/01 HTML / CSS
Win11任务栏太宽了怎么办?一招解决Win11任务栏太宽问题
2021/11/21 数码科技
Elasticsearch 数据类型及管理
2022/04/19 Python