zoukankan      html  css  js  c++  java
  • .net 缩略图 高品质

    public static void myGetThumbnailImage(string SourceFile, string strSavePathFile, int ThumbWidth, int ThumbHeight, string BgColor) 
        { 
            System.Drawing.Image oImg = System.Drawing.Image.FromFile(SourceFile); 
            //小图 
            int intwidth, intheight; 
            if (oImg.Width > oImg.Height) 
            { 
                if (oImg.Width > ThumbWidth) 
                { 
                    intwidth = ThumbWidth; 
                    intheight = (oImg.Height * ThumbWidth) / oImg.Width; 
                } 
                else 
                { 
                    intwidth = oImg.Width; 
                    intheight = oImg.Height; 
                } 
            } 
            else 
            { 
                if (oImg.Height > ThumbHeight) 
                { 
                    intwidth = (oImg.Width * ThumbHeight) / oImg.Height; 
                    intheight = ThumbHeight; 
                } 
                else 
                { 
                    intwidth = oImg.Width; 
                    intheight = oImg.Height; 
                } 
            } 
            //构造一个指定宽高的Bitmap 
            Bitmap bitmay = new Bitmap(intwidth, intheight); 
            Graphics g = Graphics.FromImage(bitmay); 
            Color myColor; 
            if (BgColor == null) 
                myColor = Color.FromName("white"); 
            else 
                myColor = Color.FromName(BgColor); 
            //用指定的颜色填充Bitmap 
            g.Clear(myColor); 
            g.InterpolationMode = InterpolationMode.HighQualityBicubic;  
            //开始画图 
            g.DrawImage(oImg, new Rectangle(0, 0, intwidth, intheight), new Rectangle(0, 0, oImg.Width, oImg.Height), GraphicsUnit.Pixel); 
            bitmay.Save(strSavePathFile, System.Drawing.Imaging.ImageFormat.Jpeg); 
            g.Dispose(); 
            bitmay.Dispose(); 
            oImg.Dispose(); 
            //删除源图 
            try 
            { 
                File.Delete(SourceFile); 
            } 
            catch 
            { 
            } 
        } 

  • 相关阅读:
    三种数据解析方式
    requests模块相关用法
    urllib模块基本用法
    django复习题
    scrapy框架编写向redis数据库中存储数据的相关代码时报错解决办法
    并发编程练习题
    网络编程 socket 开发练习题
    面向对象编程设计练习题(2)
    pytest-fixtured
    Python 删除某一目录下的所有文件或文件夹
  • 原文地址:https://www.cnblogs.com/yeye518/p/2231688.html
Copyright © 2011-2022 走看看