各位大哥麻烦解析下下面的函数每一步

sheng123456 2009-06-16 10:37:47
各位大哥麻烦解析下下面的函数每一步,小弟研究了很久也不明!
/**
按照比例改变图片大小(非生成缩略图)
@param string $img 图片路径
@param int $max_w 最大缩放宽
@param int $max_h 最大缩放高
*/
function chImageSize ($img,$max_w,$max_h)
{
$size = @getimagesize($img);
$w = $size[0];
$h = $size[1];
//计算缩放比例
@$w_ratio = $max_w / $w;
@$h_ratio = $max_h / $h;
//决定处理后的图片宽和高
if( ($w <= $max_w) && ($h <= $max_h) )
{
$tn['w'] = $w;
$tn['h'] = $h;
}
else if(($w_ratio * $h) < $max_h)
{
$tn['h'] = ceil($w_ratio * $h);
$tn['w'] = $max_w;
}
else
{
$tn['w'] = ceil($h_ratio * $w);
$tn['h'] = $max_h;
}
$tn['rc_w'] = $w;
$tn['rc_h'] = $h;
return $tn ;
}
...全文
25 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
sheng123456 2009-06-17
  • 打赏
  • 举报
回复
else if(($w_ratio * $h) < $max_h)
这句话中的$w_ratio不是应该为$h_ratio吗?
jjpig 2009-06-17
  • 打赏
  • 举报
回复
顶一个。。。。难啊。。。哎。。。。
Exbox 2009-06-17
  • 打赏
  • 举报
回复
$size = @getimagesize($img);
从$img这个路径中取得图片的宽,和高,返回结果是数组,存储在$size中

$w = $size[0];
$h = $size[1];
输出宽和高,$size[0]的意思是$size这个数组中的第一个元素。


//决定处理后的图片宽和高
if( ($w <= $max_w) && ($h <= $max_h) )
{
$tn['w'] = $w;
$tn['h'] = $h;
判断,如果原图片的大小小于最大缩放宽和高,那么原图不变
}
else if(($w_ratio * $h) < $max_h)
{
$tn['h'] = ceil($w_ratio * $h);
$tn['w'] = $max_w;
否则,进行缩放。
}
else
{
$tn['w'] = ceil($h_ratio * $w);
$tn['h'] = $max_h;
}
$tn['rc_w'] = $w;
$tn['rc_h'] = $h;
return $tn ;
返回$tn,其中包含处理后的宽和高
}
tfxg 2009-06-16
  • 打赏
  • 举报
回复
function chImageSize ($img,$max_w,$max_h)
{
$size = @getimagesize($img); //取得图象大小
$w = $size[0]; //图象宽
$h = $size[1]; //图象高
//计算缩放比例
@$w_ratio = $max_w / $w; //宽度缩放比例
@$h_ratio = $max_h / $h; //高度缩放比例
//决定处理后的图片宽和高
if( ($w <= $max_w) && ($h <= $max_h) ) //缩放后宽和高都小于等于原来的宽和高则用原来的宽和高
{
$tn['w'] = $w;
$tn['h'] = $h;
}
else if(($w_ratio * $h) < $max_h) //否则
{
$tn['h'] = ceil($w_ratio * $h);
$tn['w'] = $max_w;
}
else
{
$tn['w'] = ceil($h_ratio * $w);
$tn['h'] = $max_h;
}
$tn['rc_w'] = $w;
$tn['rc_h'] = $h;
return $tn ; //返回缩放后的宽和高
}

21,891

社区成员

发帖
与我相关
我的任务
社区描述
从PHP安装配置,PHP入门,PHP基础到PHP应用
社区管理员
  • 基础编程社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧