【问题标题】:What is the best way to dynamically resize images?动态调整图像大小的最佳方法是什么?
【发布时间】:2011-11-22 23:19:30
【问题描述】:

问题: 我们有大型产品图像,我们想要各种尺寸的缩略图,但不想在 Photoshop 中批量处理图像。我们想要一种动态方式或调整图像大小,在后端处理图像时不会增加额外的加载时间。

亚马逊通过他们的电子商务解决方案做到了这一点。当您上传图像时,它会以方形格式调整图像大小,然后为您提供可以想象的各种尺寸。例如 150x150、149x149 等。从图像的最大尺寸开始,因此如果您上传 1024x900 图像,它会将其大小调整为 1023x899、1023x1203(在需要时添加空白),然后调整每个像素的大小,直到达到 1x1 像素。一些如何将所有图像存储到服务器(如果它甚至这样做的话)

“一定有更好的方法”

关于动态处理图像大小调整的最佳方法有什么建议吗?

【问题讨论】:

  • 呃,你“确定”亚马逊会这样做吗?我有点怀疑......通常会存储一些不同的谨慎尺寸(但不是以 1px 为步长!)比如“缩略图”、“小”和“正常”。根据图像格式,这些可以存储在不同的图像中或嵌入到相同的图像中。此外,一些图像格式被设计成可以通过读取较少的整体数据来获得“预览”(也就是说,它们可以被采样)。
  • 2-3 年前,当我在亚马逊电子商务解决方案上工作时,我可以插入比原始尺寸更小的任何尺寸,它会按比例调整它的大小。每次我调用图像时,他们都可以运行脚本,但无论哪种方式,它都有很大帮助。

标签: image batch-processing image-resizing


【解决方案1】:

动态图像处理速度非常快,与为上传的图像生成所有可能的尺寸组合相比,它是一种更好的解决方案。

open-source ImageResizing.Net library allows dynamic crop/zoom and resizing 和 WIC 插件的往返时间通常小于 20 毫秒。这很难被击败。如果您想与大人物一起扩展,它还提供磁盘缓存和 Amazon CloudFront 和 S3 支持。它被 20K-60K 网站使用,一些服务器托管超过 20TB 的图像。

我很确定亚马逊在他们的电子商务解决方案中使用缓存的动态图像大小调整。预生成图像版本是 2001 年的解决方案。

[完全披露:我是作者。]

【讨论】:

  • 感谢计算机语言学家。这正是我想要的。
猜你喜欢
  • 2011-07-09
  • 1970-01-01
  • 2012-05-11
  • 2012-01-01
  • 1970-01-01
  • 1970-01-01
  • 2011-01-04
  • 2021-01-29
  • 2010-10-24
相关资源
最近更新 更多