让我们看一下这个链接:https://images-eu.ssl-images-amazon.com/images/I/51KyXgRx4cL.SY100.jpg。这显示高度为100px且分辨率为5kb
的图像您可以通过更改.jpg
之前的数字来更改尺寸和分辨率。
将其更改为例如https://images-eu.ssl-images-amazon.com/images/I/51KyXgRx4cL.SY300.jpg它的高度为300像素,分辨率为30千克。
他们是怎么做到的?这张单张图片真的有数百份吗?或者,这是由.htaccess
做出的吗?或者他们使用复杂的网络应用程序?我可以为自己的服务器执行此操作吗?
答案 0 :(得分:0)
这张单张图片真的有数百份吗?
没有
我不知道,如果亚马逊云使用htaccess机制,但如果您想使用自己的代码和htaccess,您可以将所有请求* .jpg(或任何其他图像格式)路由到分析字符串的Web脚本或api控制器,查找图像名称并动态返回其大小的副本。调整30 KB甚至更小的图像大小并不是什么大问题,可以按需完成。
这看起来像是PHP的一个例子:https://gist.github.com/davejamesmiller/3236415 (htaccess让我先想到PHP)
答案 1 :(得分:0)
"他们是怎么做到的?这张单张图片真的有数百份吗?"
可以使用图像处理API来完成。您只需要将一个高分辨率图像上传到云端,然后即时动态创建多个已调整大小,裁剪和处理的图像,并通过动态URL传送它们。
"我可以为自己的服务器执行此操作吗?"
当然,
我喜欢在我的网站中使用Cloudinary来调整大小和optimize images。
图像上传到我的服务器端PHP代码,然后例如,如果我想更改此图像的高度:
http://res.cloudinary.com/demo/image/upload/w_0.5/sample.jpg
我需要将网址更改为
http://res.cloudinary.com/demo/image/upload/h_200/sample.jpg
如果我想将宽度更改为200像素,将高度更改为100像素,请将URL更改为:
http://res.cloudinary.com/demo/image/upload/w_200,h_100/sample.jpg