库存图片调整大小计算比率算法

时间:2014-10-20 16:59:06

标签: php image resize imagick

我正在为我的客户制作一个关于可下载的照片的项目。

他们给了我一些示例网站,看看他们到底想要什么。

他们想要多种尺寸的选项,例如here(XXXL,XXL,XL,L,M,S):

我想知道计算如何用于创建不同的大小,我认为没有固定的比例,如1.2,2,3等。

  • XXXL = 11252W,3340H
  • XXL = 7381W x 2191H

XXXL和XXL RATIO

11252/7381 = 1.52~

他们如何计算创建不同的尺寸?

1 个答案:

答案 0 :(得分:1)

我相信iStockPhoto的计算基于打印尺寸。例如,正如您所读,他们销售这些格式:

  • S:272 x 377 px | 17.7×5.2“@ 72.0 dpi
  • M:2544 x 755 px | 8.5×2.5“@ 300.0 dpi
  • L:4070 x 1208 px | 13.6×4.0“@ 300.0 dpi
  • ...
  • XXXL:11252 x 3340 px | 37.5×11.1“@ 300.0 dpi

因此,他们首先获得所需的打印尺寸(例如17.7“x 5.2”),它们指定打印分辨率(72 dpi适用于屏幕; 300dpi适用于高质量打印)并最终将其转换为像素。最后一步非常简单:如果你想要800“300 dpi(每英寸点数),假设1点= 1像素(例如,对于Retina显示不正确,但打印正确),则得到8.5 * 300 = 2550像素。分辨率应该是2550x750像素;差异可以解释为图像的比例不完全是3.4:1。

无论如何,在确定最大尺寸后,您可以调整照片大小直至合适。这是一个很容易的比例:
origWidth : origHeight = targetWidth : targetHeight