获取尺寸以将图像转换为最大值

时间:2015-02-28 23:12:49

标签: php

我需要获得一些尺寸来显示图像。

我想以最大像素大小显示图像的最长边。 因此,如果最大长度应为1000px,我必须检查高度或宽度是否更大。之后,我以正确的比例调整尺寸。 如果图像尺寸小于1000px,则不会发生任何事情。

这是我的解决方案,已经有效。但我对此并不满意。有更聪明的解决方案吗?

dimensions(1000);

function dimensions($limit) {           
    if ($width >= $height) {
        if ($width < $limit) $limit = $width;
        $factor = $width / $limit;
    }
    else {
        if ($height < $limit) $limit = $height;
        $factor = $height / $limit;
    }   
    $new_width = $width / $factor;
    $new_height = $height / $factor;
}

1 个答案:

答案 0 :(得分:0)

我的示例代码:

function dimensions($limit) { 
    $tmp = max($width, $height);
    $limit = min($limit, $tmp);
    $factor = $tmp / $limit;

    $new_width = $width / $factor;
    $new_height = $height / $factor;
}