何时调整图像大小?

时间:2013-05-24 09:25:00

标签: c# image image-processing

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

什么是更好的方法:

  1. 关于保存图像,保存两张低质量图像,第二张保留原始质量图像 或
  2. onload image使用Bitmap降低质量?

3 个答案:

答案 0 :(得分:1)

我会在上传/添加时调整它们的大小。我还要确保将它们的大小恰当地命名为gold_ring_640_480.jpg

然后,如果我需要更改预览的大小,我会添加功能,如果不存在所需的图片大小,则可以根据需要随意调整大小。

Image_240p exists?
  not: create
       save _240p
use the image  

答案 1 :(得分: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

答案 2 :(得分:1)

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

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

使用图像处理软件调整客户端大小通常会产生最佳质量和低文件大小。

.NET中的“正常”调整大小功能远远没有达到这个质量。

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