如何通过URL更改图像分辨率?

时间:2017-09-04 10:51:00

标签: html image url

让我们看一下这个链接: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做出的吗?或者他们使用复杂的网络应用程序?我可以为自己的服务器执行此操作吗?

2 个答案:

答案 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