我不知道这个问题是否适合这里,但我想了解调整图像大小的公式,同时保持PHP GD库或其他任何内容的比例。
例如,这是一个例子: http://salman-w.blogspot.com/2008/10/resize-images-using-phpgd-library.html
在此示例中,如果“target_aspect_ratio”大于“original_aspect_ratio”,则height为targe_height,宽度由target_height * original_aspect_ratio计算。
如果“original_aspect_ratio”大于“target_aspect_ratio”,则目标宽度为target_width,高度由target_width / original_aspect_ratio计算
为什么?
答案 0 :(得分:1)
在保持比率时,我总是调整图像大小的方法是使用如下算法:
$imgHeight=600; // Or the actual image height.
$imgWidth=300; // Or again the width of the image
$imgRatio=$imgHeight/$imgWidth;
然后,要调整图像大小,您可以使用以下内容:
$newHeight=1000;
resize($newHeight, ($newHeight/$imgRatio));
// assumes Height x Width in the resize command.
使用此方法,您可以获得原始图像的比例,然后将其应用于您需要的任何大小。
编辑:
如果您正在制作缩略图,您通常会希望将所有缩略图的图像大小保持相同的大小 - 因此它们可以很好地排列在页面上。我建议调整图像的大小,使调整大小的图像适合实际的缩略图 - 基本上在顶部或底部给它空间,然后用背景颜色填充它或保持透明,以便它与其余部分一起使用站点。