缩放时使用插值模式控制图像质量

博客介绍了Graphics对象的插值模式会影响GDI+缩放图像的方式。InterpolationMode枚举定义了多种插值模式,不同模式对图像缩放质量和处理时间有不同影响,如NearestNeighbor质量最差,HighQualityBicubic质量最好,还说明了设置插值模式的方法及给出收缩图像示例。

Graphics 对象的插值模式会影响 GDI+ 缩放(拉伸和收缩)图像的方式。 InterpolationMode 枚举定义了几种插值模式,其中一些模式显示在下面的列表中:

  • NearestNeighbor

  • Bilinear

  • HighQualityBilinear

  • Bicubic

  • HighQualityBicubic

若要拉伸图像,原始图像中的每个像素都必须映射为较大图像中的一组像素。 若要收缩图像,必须将原始图像中成组的像素映射为较小图像中单个的像素。 执行这些映射的算法的效果决定缩放后图像的质量。 生成优质缩放图像的算法往往需要更长的处理时间。 在上面的列表中, NearestNeighbor 是质量最差的模式, HighQualityBicubic 是质量最好的模式。

若要设置插值模式,请将 InterpolationMode 枚举的一个成员分配给 Graphics 对象的 InterpolationMode 属性。

 

下面的示例绘制一个图像,然后用三种不同的插值模式收缩图像。

下面的插图显示原始图像和三个较小的图像。

Image image = new Bitmap("GrapeBunch.bmp");
int width = image.Width;
int height = image.Height;

// Draw the image with no shrinking or stretching.
e.Graphics.DrawImage(
    image,
    new Rectangle(10, 10, width, height),  // dest
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

破浪征程

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值