我需要获得一些尺寸来显示图像。
我想以最大像素大小显示图像的最长边。 因此,如果最大长度应为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;
}
答案 0 :(得分:0)
我的示例代码:
function dimensions($limit) {
$tmp = max($width, $height);
$limit = min($limit, $tmp);
$factor = $tmp / $limit;
$new_width = $width / $factor;
$new_height = $height / $factor;
}