Reset Image Size 图片转换缩放

System.Drawing.Image imgOriginal = System.Drawing.Image.FromFile(originalImagePath);
        //获取原图片的的宽度与高度
        int originalWidth = imgOriginal.Width;
        int originalHeight = imgOriginal.Height;        

       //定义缩略图片宽度和高度  
        int thumbnailWidth, thumbnailHeight;

        //如果原图片的宽度与高度都小于缩略图片尺寸
        if (originalWidth < thumbnailSize && originalHeight < thumbnailSize)
        {
            thumbnailWidth = originalWidth;  //宽度等于原宽度
            thumbnailHeight = originalHeight;//高度等于原高度
        }
        //如果原图片宽度大于原图片的高度              
        else if (originalWidth > originalHeight)
        {
            thumbnailWidth = thumbnailSize;  //宽度等于缩略图片尺寸
            thumbnailHeight = originalHeight * thumbnailSize / originalWidth;  //高度做相应比例缩小
        }
        //如果原图片高度大于原图片的宽度
        else
        {
            thumbnailWidth = originalWidth * thumbnailSize / originalHeight; //宽度做相应比例缩小
            thumbnailHeight = thumbnailSize; //高度等于缩略图片尺寸
        }

        System.Drawing.Bitmap bitmap = new System.Drawing.Bitmap(thumbnailWidth, thumbnailHeight);
        System.Drawing.Graphics graphics = System.Drawing.Graphics.FromImage(bitmap);

        //设置缩略图片质量
        graphics.InterpolationMode = System.Drawing.Drawing2D.InterpolationMode.HighQualityBicubic;
        graphics.CompositingQuality = System.Drawing.Drawing2D.CompositingQuality.HighQuality;
        graphics.SmoothingMode = System.Drawing.Drawing2D.SmoothingMode.HighQuality;
        
        graphics.DrawImage(imgOriginal, 0, 0, thumbnailWidth, thumbnailHeight);
       
        // 保存缩略图片
        bitmap.Save(imageSavePath);

原文地址:http://www.cnblogs.com/insus/articles/2060601.html

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值