PHP图片等比例缩放生成缩略图函数分享
<?php
/*
*@im //需要缩放的图片资源
*@filetype//制作的缩略图文件类型
*@dstimW //缩放的图片的宽度
*@dstimH //缩放的图片的高度
*@thumbname//缩略图文件名字
functionmakethumb($im,$dstimW,$dstimH,$thumbname,$filetype){
//获取im的宽度和高度
$pic_W=imagesx($im);
$pic_H=imagesy($im);
$arr=array();
swith($filetype){
case"jpg":
$arr[$filetype]="imagejpeg";
break;
case"png";
$arr[$filetype]="imagepng";
break;
case"jif";
$arr[$filetype]="imagegif";
}
if(($dstimgW&&$dstimgW<$pic_W)||($dstimgH&&$dstimgH<$pic_H)){
if($dstimgW&&$dstimgW<$pic_W){
$dsimgWratio=$dstimgW/$pic_w;
$resizereagW=true;
}
if($dstimgH&&$$dstimgH<$pic_H){
$dsimgHratio=$dstimgH/$pic_H;
$resizerreagH=true;
}
//缩略图宽高和原图宽高比,取最小的那个
if($resizereagW&&$resizerreagH){
if($dsimgWratio<$dsimgHratio)
$radio=$dsimgWratio;
else
$radio=$dsimgHratio;
}
if($resizereagW&&!$resizerreagH){
$radio=$dsimgWratio;
}
if(!$resizereagW&&$resizerreagH){
$radio=$dsimgHratio;
}
$imgnewW=$pic_W*$radio;
$imgnewH=$pic_H*$radio;
if(function_exists("imgcopyresampled")){
//创建目标资源画布
$dst=imagecreatetruecolor($imgnewW,$imgnewH);
imagecopyresampled($dst,$im,0,0,0,0,$imgnewW,$imgnewH,$pic_W,$pic_H);
}else{
$dst=imagecreate($imgnewW,$imgnewH);
imagecopyresized($dst,$im,0,0,0,0,$imgnewW,$imgnewH,$imgnewH,$pic_W,$pic_H);
}
$arr[$filetype]($dst,$thumbname.".$filetype");
imagedestroy($dst);
}else{//缩略图自身的宽和高已经大于了原图的宽和高
//则缩略图的宽和缩略的高就是原图的宽和原图的高
$arr[$filetype]($im,$thumbname.".$filetype");
imagedestroy();
}
}
?>
相关文章
- php://input allow_url_include,DVWA设置PHP函数allow_url_include:已禁用
- 【说站】php数组交集函数
- PHP安装MySQL模块:简单易行(php添加mysql模块)
- PHP带参数匿名函数详解编程语言
- 的关系PHP与Oracle的良好结合(php和oracle)
- 配置PHP实现MySQL数据库连接(php连接mysql配置)
- 开发使用PHP进行Redis项目开发(redis项目php)
- 学习PHP连接MySQL:简易教程分享(php连接mysql教程)
- MySQL和PHP解决乱码问题(mysql php 乱码)
- 『PHP无法读取MSSQL数据库出现问题』(php无法读取mssql)
- Linux环境下轻松配置PHP:简单指南(linux下配置php)
- Linux查看PHP版本的方法简介(linux查看php版本)
- PHP字符转义相关函数小结(php下的转义字符串)
- linux下安装apache与php;Apache+PHP+MySQL配置攻略
- 20个非常有用的PHP类库加速php开发
- PHP下利用header()函数设置浏览器缓存的代码
- PHP中的MYSQL常用函数(php下操作数据库必备)
- php设计模式Command(命令模式)
- PHP和Mysqlweb应用开发核心技术第1部分Php基础-1开始了解php
- php入门学习知识点七PHP函数的基本应用
- PHP备份数据库生成SQL文件并下载的函数代码
- php发送post请求函数分享
- PHP生成自定义长度随机字符串的函数分享
- PHP生成等比缩略图类和自定义函数分享
- php中把美国时间转为北京时间的自定义函数分享
- 使用ob系列函数实现PHP网站页面静态化
- php生成唯一的订单函数分享
- PHP中使用sleep函数实现定时任务实例分享