用C#中的百分比值调整图像大小

本文关键字:调整 图像 百分比 | 更新日期: 2023-09-27 18:21:57

我想知道在C#中是否可以按给定的百分比按比例调整图像大小。

例如,我有一个图像,我想从中创建缩略图,我想将其大小调整为大小的25%,是否可以将百分比放在特定的方法中应用?

用C#中的百分比值调整图像大小

我使用这个方法来调整我制作的应用程序中的图像大小。它使用"System.Drawing.2D"

public static Bitmap ResizeImage(Image image, int width, int height)
    {
        var destRect = new Rectangle(0, 0, width, height);
        var destImage = new Bitmap(width, height);
        destImage.SetResolution(image.HorizontalResolution, image.VerticalResolution);
        using (var graphics = Graphics.FromImage(destImage))
        {
            graphics.CompositingMode = CompositingMode.SourceCopy;
            graphics.CompositingQuality = CompositingQuality.HighQuality;
            graphics.InterpolationMode = InterpolationMode.HighQualityBicubic;
            graphics.SmoothingMode = SmoothingMode.HighQuality;
            graphics.PixelOffsetMode = PixelOffsetMode.HighQuality;
            using (var wrapMode = new ImageAttributes())
            {
                wrapMode.SetWrapMode(WrapMode.TileFlipXY);
                graphics.DrawImage(image, destRect, 0, 0, image.Width, image.Height, GraphicsUnit.Pixel, wrapMode);
            }
        }
        return destImage;
    }