亚洲激情专区-91九色丨porny丨老师-久久久久久久女国产乱让韩-国产精品午夜小视频观看

溫馨提示×

c#圖片壓縮到固定大小怎么實現

c#
小億
183
2024-03-07 13:38:28
欄目: 編程語言

你可以使用C#中的System.Drawing命名空間來實現圖片的壓縮。下面是一個簡單的示例代碼,演示如何將圖片壓縮到指定的大小:

using System;
using System.Drawing;
using System.Drawing.Imaging;
using System.IO;

public class ImageCompressor
{
    public void CompressImage(string sourcePath, string outputPath, int maxWidth, int maxHeight)
    {
        using (Image sourceImage = Image.FromFile(sourcePath))
        {
            double aspectRatio = (double)sourceImage.Width / sourceImage.Height;
            int newWidth = maxWidth;
            int newHeight = (int)(maxWidth / aspectRatio);

            if (newHeight > maxHeight)
            {
                newHeight = maxHeight;
                newWidth = (int)(maxHeight * aspectRatio);
            }

            using (Bitmap compressedImage = new Bitmap(newWidth, newHeight))
            {
                using (Graphics graphics = Graphics.FromImage(compressedImage))
                {
                    graphics.InterpolationMode = System.Drawing.Drawing2D.InterpolationMode.HighQualityBicubic;
                    graphics.DrawImage(sourceImage, 0, 0, newWidth, newHeight);
                }

                compressedImage.Save(outputPath, ImageFormat.Jpeg);
            }
        }
    }
}

class Program
{
    static void Main()
    {
        ImageCompressor compressor = new ImageCompressor();
        compressor.CompressImage("source.jpg", "compressed.jpg", 800, 600);
    }
}

在上面的示例代碼中,CompressImage方法接受源圖片的路徑、輸出路徑以及目標寬度和高度作為參數。算法會計算出適合目標寬度和高度的圖片尺寸,并將源圖片按照這個尺寸進行壓縮保存為JPEG格式。您可以根據需要調整壓縮質量和輸出格式。

0
桦南县| 新干县| 东方市| 闽侯县| 勃利县| 收藏| 凭祥市| 新密市| 深水埗区| 定远县| 西充县| 沿河| 锡林浩特市| 长武县| 青龙| 棋牌| 罗城| 霍州市| 托里县| 武功县| 三原县| 济源市| 渑池县| 新昌县| 安泽县| 青海省| 秭归县| 泰和县| 柳河县| 合江县| 太仓市| 宜良县| 望都县| 兴宁市| 阿拉善盟| 兴业县| 兴安盟| 剑阁县| 栾城县| 寻乌县| 长武县|