Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/hibernate/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Image 动态调整图像大小的最佳方法是什么?_Image_Batch Processing_Image Resizing - Fatal编程技术网

Image 动态调整图像大小的最佳方法是什么?

Image 动态调整图像大小的最佳方法是什么?,image,batch-processing,image-resizing,Image,Batch Processing,Image Resizing,问题是: 我们有大的产品图片,我们想要各种大小的缩略图,但不想在Photoshop中批量处理图片。我们需要一种动态方式或调整图像大小,这样在后端处理图像时不会增加额外的加载时间 亚马逊是如何通过他们的电子商务解决方案做到这一点的。上传图像时,它会以正方形格式调整图像的大小,然后为您提供可以想象的所有大小。例如150x150、149x149等。从图像的最大大小开始,因此如果上载1024x900图像,它将将调整其大小至1023x899、1023x1203(在需要时添加空白),然后调整每个像素的大小,

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

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

“一定有更好的办法”


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

动态图像处理速度非常快,这是一个比为上传的图像生成所有可能的大小组合更好的解决方案

和WIC插件的往返时间通常小于20ms。这很难打败。它还提供磁盘缓存和AmazonCloudFront&S3支持,如果您想和大公司一起扩展的话。它被20K-60K的网站使用,一些服务器上的图像容量超过20TB

我敢肯定亚马逊在电子商务解决方案中使用了缓存动态图像大小调整。预生成图像版本是一个非常成熟的解决方案


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

呃,你“肯定”亚马逊会这么做吗?我有点怀疑。。。通常会存储一些不同的谨慎大小(但不是1px的步骤!)例如“缩略图”、“小”和“正常”。根据图像格式,这些图像可以存储在不同的图像中,也可以嵌入到同一图像中。此外,一些图像格式的设计使得只需读取较少的整体数据(即可以采样)即可获得“预览”。2-3年前,当我在亚马逊电子商务解决方案上工作时,我可以插入比原始尺寸更小的任何尺寸,并按比例调整大小。他们本可以在我每次调用图像时都运行一个脚本,但无论哪种方式,它都非常有用。谢谢计算机语言学家。这正是我想要的。