• C# 生成缩略图、转换图片大小


    转载自:http://www.wxzzz.com/1413.html

    该方法可以将现有路径中的一个图片文件转换为指定大小的图片。

    如果你是Image对象需要转换呢,可以自己更改下这个方法是很简单的,删掉部分代码即可。

    /// <summary>
            /// 生成缩略图
            /// </summary>
            /// <param name="localImagePath">图片地址</param>
            /// <param name="thumbnailImagePath">缩略图地址</param>
            /// <param name="width">图片宽度</param>
            /// <param name="height">图片高度</param>
            /// <param name="p"></param>
            public static void GetThumbnail(string localImagePath, string thumbnailImagePath, int width, int height)
            {
                System.Drawing.Image serverImage = System.Drawing.Image.FromFile(localImagePath);
                //画板大小
                int towidth = width;
                int toheight = height;
                //缩略图矩形框的像素点
                int x = 0;
                int y = 0;
                int ow = serverImage.Width;
                int oh = serverImage.Height;
     
                if (ow > oh)
                {
                    toheight = serverImage.Height * width / serverImage.Width;
                }
                else
                {
                    towidth = serverImage.Width * height / serverImage.Height;
                }
                //新建一个bmp图片
                System.Drawing.Image bm = new System.Drawing.Bitmap(width, height);
                //新建一个画板
                System.Drawing.Graphics g = System.Drawing.Graphics.FromImage(bm);
                //设置高质量插值法
                g.InterpolationMode = System.Drawing.Drawing2D.InterpolationMode.High;
                //设置高质量,低速度呈现平滑程度
                g.SmoothingMode = System.Drawing.Drawing2D.SmoothingMode.HighQuality;
                //清空画布并以透明背景色填充
                g.Clear(System.Drawing.Color.White);
                //在指定位置并且按指定大小绘制原图片的指定部分
                g.DrawImage(serverImage, new System.Drawing.Rectangle((width - towidth) / 2, (height - toheight) / 2, towidth, toheight),
                    0, 0, ow, oh,
                    System.Drawing.GraphicsUnit.Pixel);
                try
                {
                    //以jpg格式保存缩略图
                    bm.Save(thumbnailImagePath, System.Drawing.Imaging.ImageFormat.Jpeg);
                }
                catch (System.Exception e)
                {
                    throw e;
                }
                finally
                {
                    serverImage.Dispose();
                    bm.Dispose();
                    g.Dispose();
                }
            }
    View Code
  • 相关阅读:
    (转)Zipalign——Android apk优化工具
    (转)Android 数字证书详
    (转)ant深入浅出
    (转)Java调用Ant API用法
    (转)Java 代码调用ANT
    (转) Android如果对APK进行加密,提高反编译难度(思路)
    (转)Ant自动打包
    (转)Ant build.xml中的各种变量,使用系统环境变量
    (转)JAVA调用脚本
    (转)Android 编译,打包、签程名详细教
  • 原文地址:https://www.cnblogs.com/lenga/p/6274379.html
Copyright © 2020-2023  润新知