【发布时间】:2012-05-26 07:22:47
【问题描述】:
我们正在开发基于产品的应用程序。他们在其中使用了很多图像。我们希望提高应用程序的性能。我们可以使用哪些最佳实践来加快速度。
我们正在 APS.net(C#) 中开发此应用程序。我们可以使用 Asp.net 的哪些功能使其更快。或者我们应该记住哪些事情来让它更快。
【问题讨论】:
标签: c# asp.net performance image
我们正在开发基于产品的应用程序。他们在其中使用了很多图像。我们希望提高应用程序的性能。我们可以使用哪些最佳实践来加快速度。
我们正在 APS.net(C#) 中开发此应用程序。我们可以使用 Asp.net 的哪些功能使其更快。或者我们应该记住哪些事情来让它更快。
【问题讨论】:
标签: c# asp.net performance image
优化网络上的图像。我先把它分成两部分。
1) 尽可能多地缓存图像等静态媒体。这是适用于 IIS 7 及更高版本的 web.config 示例。
<system.webServer >
<staticContent >
<clientCache cacheControlMaxAge ="8.00:00:00"
cacheControlMode="UseMaxAge" />
</staticContent>
</system.webServer>
2) 正确媒体的正确图像
3) 从一个页面到另一个页面使用相同的图像,或者尝试只更改最小数量。
1) 通过在磁盘上制作真实文件来缓存图像的自动创建。所以不要总是制作缩略图,制作一个缩略图,将其保存到磁盘并将此 url 提供给 html 页面。所有下一个请求都必须知道缩略图都已经存在并且只需给出这个 url
2) 改变图像质量和大小的参数有:
g.InterpolationMode = System.Drawing.Drawing2D.InterpolationMode.HighQualityBicubic;
g.PixelOffsetMode = System.Drawing.Drawing2D.PixelOffsetMode.HighQuality;
g.SmoothingMode = System.Drawing.Drawing2D.SmoothingMode.HighQuality;
还可以使用 SaveAsJpeg 功能更改 Jpeg 的大小:
SaveAsJpeg(outputImage, TheFileNameTosaveIt, GetQualityForSave());
还有许多其他优化图像的技巧,您可以在书本上和网络上到处找到这些技巧。
【讨论】: