`
mywebcode
  • 浏览: 998177 次
文章分类
社区版块
存档分类
最新评论

非常好用的PHP图片处理函数

 
阅读更多
/*
* $o_photo 原图路径
* $d_photo 处理后图片路径
* $width 定义宽
* $height 定义高
* 调用方法 cutphoto("test.jpg","temp.jpg",256,146);
*/

function cutphoto($o_photo,$d_photo,$width,$height){
$o_width = imagesx($temp_img); //取得原图宽
$o_height = imagesy($temp_img); //取得原图高
//判断处理方法
if($width>$o_width || $height>$o_height){ //原图宽或高比规定的尺寸小,进行压缩
$newwidth=$o_width;
$newheight=$o_height;
if($o_width>$width){
$newwidth=$width;
$newheight=$o_height*$width/$o_width;
}
if($newheight>$height){
$newwidth=$newwidth*$height/$newheight;
$newheight=$height;
}
//缩略图片
$new_img = imagecreatetruecolor($newwidth, $newheight);
imagecopyresampled($new_img, $temp_img, 0, 0, 0, 0, $newwidth, $newheight, $o_width, $o_height);
if($lsstr == '.jpg'){
imagejpeg($new_img , $d_photo);

}elseif($lsstr == '.gif'){
imagegif($new_img,$d_photo);
}elseif($lsstr=='.png'){
imagepng($new_img,$d_photo);
}else{
return false;
}
imagedestroy($new_img);

}else{ //原图宽与高都比规定尺寸大,进行压缩后裁剪
if($o_height*$width/$o_width>$height){ //先确定width与规定相同,如果height比规定大,则ok
$newwidth=$width;
$newheight=$o_height*$width/$o_width;
$x=0;
$y=($newheight-$height)/2;
}else{ //否则确定height与规定相同,width自适应
$newwidth=$o_width*$height/$o_height;
$newheight=$height;
$x=($newwidth-$width)/2;
$y=0;
}
//缩略图片
$new_img = imagecreatetruecolor($newwidth, $newheight);
imagecopyresampled($new_img, $temp_img, 0, 0, 0, 0, $newwidth, $newheight, $o_width, $o_height);
if($lsstr == '.jpg'){
imagejpeg($new_img , $d_photo);
}elseif($lsstr == '.gif'){
imagegif($new_img,$d_photo);
}elseif($lsstr=='.png'){
imagepng($new_img,$d_photo);
}else{
return false;
}
imagedestroy($new_img);


}
}
分享到:
评论

相关推荐

    php图片处理函数.rar

    php图片处理函数

    PHP函数库,PHP函数大全,PHP函数实例,PHP函数手册,PHP5函数库实例

    PHP图片处理类:缩略,裁剪,圆角,倾斜 PHP多功能图片处理类 PHP多重判断删除文件函数 PHP实现英文标题的正确大写 PHP常用图片处理类 PHP常用测试函数 PHP得到当周每天日期 PHP文件下载类 PHP无限分类[左右...

    php进行图像处理的函数类

    一个php进行图像处理的函数类。 对于生成缩略图有两种方式:一种是直接按比例来压缩图片,另外一种是先裁剪再压缩的方式。等例压缩与裁剪压缩区别就在于: 等例压缩:能保证图片的宽长比例合理,且图片有完整性。...

    php进行图像处理的函数类.zip

    分享一个php进行图像处理的函数类。 对于生成缩略图有两种方式:一种是直接按比例来压缩图片,另外一种是先裁剪再压缩的方式。等例压缩与裁剪压缩区别就在于:  等例压缩:能保证图片的宽长比例合理,且图片...

    多功能的php图片处理类

    一个多功能的php图片处理类,图片处理函数功能:缩放、剪切、相框、水印、锐化、旋转、翻转、透明度、反色,处理并保存历史记录的思路:当有图片有改动时自动生成一张新图片,命 名方式可以考虑在原图片的基础上加上...

    php图片处理函数获取类型及扩展名实例

    本文实例讲述了php图片处理函数获取类型及扩展名的方法。分享给大家供大家参考。 具体实现代码如下: 复制代码 代码如下:image_type=image_type_to_mime_type(imagetype_png); //获取png的mime类型 echo $image_...

    PHP等比例缩放图片计算以及上传函数

    两个函数,一个计算出等比例缩放后的图片宽,高并返回;另个函数对上传图片进行按指定宽高处理,上传到目标文件夹

    php 图片处理技术

    这里有个很好的图片处理函数,大家可以来看看,

    PHP图片处理之使用imagecopyresampled函数实现图片缩放例子

    主要介绍了PHP图片处理之使用imagecopyresampled函数实现图片缩放例子,本文先是讲解了imagecopyresampled函数的相关知识,然后给出了实现代码例子,需要的朋友可以参考下

    PHP专题——重点函数 静态化 缓存 面向对象 异常处理

    PHP专题从原理到实例简述PHP的重点函数,静态化技术,缓存技术,面向对象编程,以及详细的异常处理。 主题讲解思路清晰,流程化分析,富含表格与图片说明.

    PHP图片处理之使用imagecopyresampled函数裁剪图片例子

    主要介绍了PHP图片处理之使用imagecopyresampled函数裁剪图片例子,本文例子相对简单,是一篇入门级的学习总结,需要的朋友可以参考下

    php多功能的图片处理类,php上传php裁剪php水印php多图

    php图片处理类,等比缩放函数,需处理图片的名称,缩放后的前缀名 ,获取计算图片等比例之后的大小,另存为一个新的图片,返回新的缩放后的图片名称,水印标记函数,获取图像的调色板的颜色数目等等

    PHP给图片添加水印,压缩,剪切的封装类

    当我们频繁利用php对图片进行操作时,会自然封装很多函数,否则会写太多重复的代码。当有很多对图片的相关函数的时候,我们可以考虑将这些函数也整理一下,因而就有了封装成类的想法。 操作图片主要历经四个步骤: ...

    多功能的php图片处理类.zip

    介绍一个多功能的php图片处理类,图片处理函数功能:缩放、剪切、相框、水印、锐化、旋转、翻转、透明度、反色,处理并保存历史记录的思路:当有图片有改动时自动生成一张新图片,命 名方式可以考虑在原图片的基础上...

    PHP图片处理之使用imagecopy函数添加图片水印实例

    为图片添加水印也是图片处理中常见的功能。因为只要在页面中见到的图片都可以很轻松地拿到,你辛辛苦苦编辑的图片不想被别人不费吹灰之力拿走就用,所以为图片添加水印以确定版权,防止图片被盗用。制作水印可以使用...

    php常用图片处理类

    本文为大家分享的php常用图片处理类,供大家参考学习,具体内容如下 <?php /*已知问题:1.在图片缩放功能中,使用imagecreatetruecolor函数创建画布,并使用透明处理算法,但PNG格式的图片无法透明。用...

    PHP基于GD库实现的生成图片缩略图函数示例

    本文实例讲述了PHP基于GD库实现的生成图片缩略图函数。分享给大家供大家参考,具体如下: <?php /** * 生成缩略图函数(支持图片格式:gif、jpeg、png和bmp) * @author ruxing.li * @param string $src 源...

    PHP GD库相关图像生成和处理函数小结

    主要介绍了PHP GD库相关图像生成和处理函数,分类总结并分析了php GD库相关图像处理函数的功能与用法,需要的朋友可以参考下

Global site tag (gtag.js) - Google Analytics