首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

在c#.net中如何在不降低图像质量的情况下调整图像大小?

在C#.NET中,可以使用System.Drawing命名空间中的Image类来调整图像大小而不降低图像质量。以下是一个示例代码:

代码语言:txt
复制
using System.Drawing;

public Image ResizeImage(Image originalImage, int newWidth, int newHeight)
{
    // 创建一个新的Bitmap对象,并设置宽度和高度
    Bitmap resizedImage = new Bitmap(newWidth, newHeight);

    // 创建一个Graphics对象,用于绘制调整大小后的图像
    using (Graphics graphics = Graphics.FromImage(resizedImage))
    {
        // 设置绘制质量,以保持图像质量不变
        graphics.InterpolationMode = System.Drawing.Drawing2D.InterpolationMode.HighQualityBicubic;
        graphics.SmoothingMode = System.Drawing.Drawing2D.SmoothingMode.HighQuality;
        graphics.PixelOffsetMode = System.Drawing.Drawing2D.PixelOffsetMode.HighQuality;
        graphics.CompositingQuality = System.Drawing.Drawing2D.CompositingQuality.HighQuality;

        // 绘制调整大小后的图像
        graphics.DrawImage(originalImage, 0, 0, newWidth, newHeight);
    }

    return resizedImage;
}

使用该方法,您可以将原始图像调整为指定的宽度和高度,而不会降低图像质量。调用示例:

代码语言:txt
复制
Image originalImage = Image.FromFile("原始图像路径");
int newWidth = 800;
int newHeight = 600;

Image resizedImage = ResizeImage(originalImage, newWidth, newHeight);

// 保存调整大小后的图像
resizedImage.Save("调整大小后的图像路径");

这样,您就可以在C#.NET中调整图像大小而不降低图像质量了。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

领券