对 ASP.NET 图像的颜色量化(Quantization)进行优化(From MS)

本文探讨了针对ASP.NET的图像颜色量化优化技术,通过改进算法和利用GDI+库,实现更高效的图片处理,提升网站性能。
摘要由CSDN通过智能技术生成

对 ASP.NET 图像的颜色量化(Quantization)进行优化


Morgan Skinner
Microsoft Developer Services
2003年5月

摘要:介绍如何动态量化(重新着色)为 ASP.NET 页生成的图像,从而克服 .NET Framework 1.0 和 1.1 版中的 GDI+ 局限性。本文介绍了两种降低图像颜色深度的方法。

适用于:
   Microsoft® Framework 1.0 和 1.1 版
   Microsoft® Visual C#®
   Microsoft® ASP.NET

下载 DotNET_Color_Quantization_Code.exe 示例文件(英文)。

目录

简介

大多数 Web 站点都会包含各种格式的图形,例如 MSDN Web 站点的横幅标题和用于新闻标题列表的缩略图图像。所有这些图像都是静态的 - 它们由 Web 组的一个成员生成,被重新着色以满足 Web 站点的要求,然后存储到磁盘中以备适当时使用。

使用 ASP.NET,还可以在处理当前 Web 请求的过程中创建动态图像。此功能可以使站点个性十足,或者生成符合一定外观风格的图像,而不需要 Web 设计师的服务。

图像的生成相对比较简单:创建一个用于绘图的表面,显示相应的图像,然后将其保存到要返回给用户的 ASP.NET 响应流中。

这种方案唯一的问题就是生成的图像质量。默认情况下,GDI+ 会利用 Web 安全调色板,将位图转换为适用于 Web 页的图像(例如 GIF 或 JPEG)。(有关详细信息,请参阅本文最后的更多信息。)因此生成的图像质量会比较差,而且还可能包含由于使用减色算法而产生的各种杂色。这种利用 Web 安全调色板进行的转换发生在图像转换为输出类型(例如 GIF 或 JPEG)之前,因此,即使输出类型能够支持多种颜色,生成图像时仍然会使用 Web 安全调色板中的颜色。

除了生成的图像质量以外,为图像重新着色还有一个原因就是速度 - 通常从 Web 站点下载每像素 1 字节的图像比下载每像素 4 字节的图像速度要快,而且并不是每个人都有 ADSL。此外,某些浏览器(例如 WebTV)的颜色空间有一定的限制。因此,为了能向客户提供高质量的图像,重新着色是必要的。

为图像重新着色以指定颜色数较少的调色板的过程称为“量化(Quantization)”。

问题概述

为了查看默认 GDI+ 图像显示的结果,我将提供一个简单的图像

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值