如何使用PHP以更好的方式调整图像大小?

时间:2011-10-29 06:12:38

标签: php image-resizing

我希望在不影响其质量的情况下使用PHP来调整图像大小。当我尝试使用PHP中的imagick或GD库时,如果我给出固定的宽度或高度,它会影响图像的质量。所以当我尝试他们正在做的其他一些网站依赖于图像大小,他们动态调整图像大小。如果我上传两个不同大小的图像重新调整大小时图像包含不同的宽度和高度。但在我的应用程序,当我给出缩略图宽度640(imagic和GD库)然后我将获得640图像大小的图像。我想知道他们如何动态计算图像宽度和高度以调整大小?并且当调整非常小尺寸的图像时,我怎样才能实现质量?

1 个答案:

答案 0 :(得分:1)

如果要在调整图像大小时保持图像的纵横比,则只能将宽度或高度中的一个保持为常量,而另一个则需要根据纵横比计算。

例如,如果您想将图像宽度设置为640,则可以使用以下formulta找到targetHeight

targetHeight = sourceHeight/sourceWidth * 640;