有代理资源网

热门关键词: 
旗下栏目:C#教程vb.net编程Delphijava编程AndroidIOSSwift易语言其它相关 帮助
您现在的位置:首页 > 软件编程 > C#教程 > 正文

c#生成缩略图的实现方法

所属栏目: C#教程 | 发布时间:2017-03-13 14:28:41 | 小编:橙子 | #我要评论#
private void SaveThumbnail(Bitmap originBitmap, int width, int height, string directory, string filename, string extension)
{
    var physicalPath = directory + filename + extension;

    using (var newImage = new Bitmap(width, height))
    {
        using (var graphic = GetGraphic(originBitmap, newImage))
        {
            graphic.DrawImage(originBitmap, 0, 0, width, height);
            using (var encoderParameters = new EncoderParameters(1))
            {
                encoderParameters.Param[0] = new EncoderParameter(Encoder.Quality, 100L);
                newImage.Save(physicalPath,
                            ImageCodecInfo.GetImageEncoders()
                                .Where(x => x.FilenameExtension.Contains(extension.ToUpperInvariant()))
                                .FirstOrDefault(),
                            encoderParameters);
            }
        }
    }            
}
private Graphics GetGraphic(Image originImage, Bitmap newImage)
{
    newImage.SetResolution(originImage.HorizontalResolution, originImage.VerticalResolution);
    var graphic = Graphics.FromImage(newImage);
    graphic.InterpolationMode = System.Drawing.Drawing2D.InterpolationMode.HighQualityBicubic;
    graphic.SmoothingMode = System.Drawing.Drawing2D.SmoothingMode.HighQuality;
    graphic.PixelOffsetMode = System.Drawing.Drawing2D.PixelOffsetMode.HighQuality;
    graphic.CompositingQuality = System.Drawing.Drawing2D.CompositingQuality.HighQuality;
    return graphic;
}



热点聚合:c#

看过本文的人还看过

本周热门

关于有代理资源网-版权声明-广告服务-发展历程-常见问题-联系我们- TAG标签-网站地图

本站资源来自互联网收集,仅供用于学习和交流,请勿用于商业用途。如有侵权、不妥之处,请联系站长并出示版权证明以便删除。敬请谅解!
侵权删帖/违法举报/投稿联系邮箱:duomu@vip.qq.com

Copyright © 2014-2018 有代理资源网 版权所有 鄂ICP备14013235号-8  鄂公网安备 42090202000244号  

Ctrl+D 将本页面保存为书签,全面了解最新资讯,方便快捷。