利用PHP实现图片等比例放大和缩小的方法详解
前端之家收集整理的这篇文章主要介绍了
利用PHP实现图片等比例放大和缩小的方法详解,
前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
<div class="codetitle"><a style="CURSOR: pointer" data="97800" class="copybut" id="copybut97800" onclick="doCopy('code97800')"> 代码如下:
<div class="codebody" id="code97800">
function resizeimage($srcfile,$mySize){
$size=getimagesize($srcfile);
switch($size[2]){
case 1:
$img=imagecreatefromgif($srcfile);
break;
case 2:
$img=imagecreatefromjpeg($srcfile);
break;
case 3:
$img=imagecreatefrompng($srcfile);
break;
}
//源图片的宽度和高度
$oldImg['w']=imagesx($img);
$oldImg['h']=imagesy($img);
if ($oldImg['w']<=$mySize['w'] && $oldImg['h']<156){
$rate=1;
}elseif ($oldImg['w']>$mySize['w'] && $oldImg['h']<$mySize['h']){
$rate=$mySize['w']/$oldImg['w'];
}elseif ($oldImg['w']<$mySize['w'] && $oldImg['h']>$mySize['h']){
$rate=$mySize['h']/$oldImg['h'];
}elseif ($oldImg['w']>$mySize['w'] && $oldImg['h']>$mySize['h']){
$rate1=$mySize['w']/$oldImg['w'];
$rate2=$mySize['h']/$oldImg['h'];
if ($rate1>$rate2){$rate=$rate2;}else{$rate=$rate1;}
}
$newImg['w']=$oldImg['w']
$rate;
$newImg['h']=$oldImg['h']$rate;
return "width=".$newImg['w']." height=".$newImg['h'];
}