老师,缩略图这里有点疑问
老师的代码:
if($width <= 0 || $height <= 0)
{
$desW = $srcW;//缩略图高度
$desH = $srcH;//缩略图宽度
}
else
{
$srcP = $srcW / $srcH;//宽高比
$desP = $width / $height;
if($width > $srcW)
{
if($height > $srcH)
{
$desW = $srcW;
$desH = $srcH;
}
else
{
$desH = $height;
$desW = round($desH * $srcP);
}
}
else
{
if($desP > $srcP)
{
$desW = $width;
$desH = round($desW / $srcP);
}
else
{
$desH = $height;
$desW = round($desH * $srcP);
}
}
}
当$width>$SrcW && $heigh<$srcH时老师取$desW = round($desH*$srcP);
这里不是应该取$desW = round($desH*$desP)么?
正在回答
同学你好,在传进来的宽大于原宽,并传入的高度小于原图的高度,为了保证原图的宽高比,以生成缩略图的高作为基础,乘于原图宽高比($desW=round($desH*$srcP);)。如果使用传参的宽高比,则宽度大于原图,会将图片放大,而不是缩略了。
如果解决了你的问题,请采纳,祝学习愉快~
- 参与学习 人
- 提交作业 225 份
- 解答问题 3372 个
掌握用PHP开发互联网网站的必备功能,掌握当下主流的Linux系统开发,并熟练使用热门框架ThinkPhp开发电商团购项目,是通向PHP工程师必经之路。
了解课程
恭喜解决一个难题,获得1积分~
来为老师/同学的回答评分吧
0 星