3

我正在为手工制作的珠宝建立一个在线商店。当然,我需要展示很多高质量的图片,首先是小尺寸的,当客户点击图片时,将他重定向到具有相同高质量图片的页面。

有什么更好的方法:

  1. 在保存图像时保存两张图像,一张以低质量保存,另一张以原始质量保存或
  2. onload 图像使用 Bitmap 来降低质量?
4

3 回答 3

1

我会在上传/添加时调整它们的大小。我还会确保根据它们的大小适当地命名它们,例如gold_ring_640_480.jpg.

然后,如果我需要更改预览的大小,我会添加功能以在所需的图片大小不存在时按需调整大小。

Image_240p exists?
  not: create
       save _240p
use the image  
于 2013-05-24T09:31:32.830 回答
1

您不需要保存所有图像大小。对于我的所有网站,我会根据我需要的尺寸即时获取图像。当有文件大小的请求时,我将在磁盘上创建一个调整大小的图像。在下一次,同样的请求,我只是检查:

  • 如果文件已经在浏览器中缓存,我将返回标题提到网站只是从缓存中获取图像。
  • 如果文件不在浏览缓存中,我将检查“文件已在磁盘中生成”。如果文件可用,只需将文件返回到响应
  • 如果文件不在浏览缓存中且不在磁盘中。我将生成它并返回文件内容。

对于图像缓存,您可以查看此参考:https ://developers.google.com/speed/docs/best-practices/caching

对于 .net 动态调整图像大小:您可以参考: http: //www.codeproject.com/Articles/191424/Resizing-an-Image-On-The-Fly-using-NET

于 2013-05-24T09:38:31.420 回答
1

这取决于。按需调整大小会导致更重的服务器负载。当很多人访问该站点时,这可能是一个问题。

在上传时调整大小可减少此问题。

使用图像处理软件在您的客户端上调整大小通常会以较小的文件大小产生最佳质量。

.NET 中的“正常”调整大小功能与这种质量相差甚远。

另外:考虑缓存。IIS 提供了使用它的所有功能,可能与 eTag 结合使用。

于 2013-05-24T09:49:31.493 回答