如何处理意想不到的宽度和高度

时间:2013-08-31 11:24:23

标签: php image-resizing

我目前正在使用以下代码将所有大于800 x600的图像调整为所需尺寸。

if (($width>800) and ($height>600))
{
WideImage::load($img_path.$name)->resize(800, 600)->saveToFile($img_path.$name);

}

但是,如果图像的宽度为1024,高度为559,则无法使用 我可以使用或但我不知道如何处理调整这些图像的大小。

1 个答案:

答案 0 :(得分:1)

我总是发现调整图像大小的最可靠方法是使用高度与宽度的比率。

psuedocode代码如下所示:

$widthRatio=$originalImageHeight/$originalImageWidth;
$newImage=resize(800, 800*$widthRatio);

然后将其调整为800,同时保持原始比率。

此外,您可能希望设置或至少检查比率,以便您不会获得1000 x 20,000上传的图像,如果您将其调整为800 x 16,000

,仍会弄乱您的网站