PHP图像根据高度调整大小

时间:2012-12-14 01:56:36

标签: php image math image-resizing image-size

嘿所有我想弄清楚如何调整高度高于宽度的图像。需要显示图像的区域的正常宽度和高度为:

width  = 1000px
height = 700px

我需要什么类型的数学才能将其调整到适当的宽度/高度而不拧紧它?

测试图像尺寸为:

 width  = 1451
 height = 2200

我在考虑这样做:

(700/org.height)

但是没有提供正确数量的 462

在photoshop中,将高度更改为 700 会产生宽度值 462

2 个答案:

答案 0 :(得分:1)

所以你想要缩放图像,使其在1000x700的正方形内尽可能大而不拉伸?你可以这样做:

$availH = 700;
$availW = 1000;
$imageH = 2200;
$imageW = 1451;

// you know you want to limit the height to 700
$newH = $availH;

// figure out what the ratio was that you adjusted (will equal aprox 0.3181)
$ratio = $availH / $imageH;

// now that you have the $ratio you can apply that to the width (will equal 462)
$newW = round(imageW * $ratio);

现在你有$ newW和$ newH这些是你的图像适当缩放的新尺寸。你当然可以将其缩小,但我已将其写出来,因此每一步都更清晰。

答案 1 :(得分:0)

调整大小时保持纵横比的公式

original height / original width x new width = new height

来源:http://andrew.hedges.name/experiments/aspect_ratio/

但是你想把它切换到以下我认为:

original width / original height x new height = new width