手机
当前位置:查字典教程网 >编程开发 >php教程 >PHP图片等比例缩放生成缩略图函数分享
PHP图片等比例缩放生成缩略图函数分享
摘要:复制代码代码如下:

复制代码 代码如下:

<?php

/*

*@im //需要缩放的图片资源

*@filetype //制作的缩略图文件类型

*@dstimW //缩放的图片的宽度

*@dstimH //缩放的图片的高度

*@thumbname //缩略图文件名字

function makethumb($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图片等比例缩放生成缩略图函数分享】相关文章:

php操作memcache缓存方法分享

生成缩略图

PHP实现的增强性mhash函数

php生成随机密码的自定义函数

PHP递归调用数组值并用其执行指定函数的方法

php备份数据库类分享

PHP自动生成月历代码

在PHP的图形函数中显示汉字

PHP输出缓冲控制Output Control系列函数详解

用PHP编写PDF文档生成器

精品推荐
分类导航