zoukankan      html  css  js  c++  java
  • 等比例缩放图片

            public class GetThumbnailImg
            {
                /// <summary>
                /// 读取图片的缩略图
                /// </summary>
                /// <param name="PicPath">源图片的路径</param>
                /// <param name="PicTemp">生成缩略图的目录</param>
                /// <param name="Width">生成缩略图的宽</param>
                /// <param name="Height">生成缩略图的高</param>
                /// <returns>生成成功则返回路径,否则返回""</returns>
                public static string GetThumbnailPic(string PicPath, string PicTemp, int Width, int Height)
                {
                    System.Drawing.Bitmap Bitmap = new System.Drawing.Bitmap(PicPath);
                    if (Bitmap.Width > Bitmap.Height)
                    {
                        Height = Bitmap.Height * Width / Bitmap.Width;
                   
                    }
                    else if (Bitmap.Width < Bitmap.Height)
                    {
                        Width = Bitmap.Width * Height / Bitmap.Height;
                    }
    
                    var img = Bitmap.GetThumbnailImage(Width, Height, () => { return false; }, IntPtr.Zero);
                    try
                    {
                        img.Save(PicTemp);
                        return PicTemp;
                    }
                    catch
                    {
                        return "";
                    }
                }
            }

    调用

             if (IsPostBack)
                {
                    string FileName = MapPath("~/img/") + Guid.NewGuid().ToString() + System.IO.Path.GetExtension(FileUpload1.FileName);
                    FileUpload1.SaveAs(FileName);
                    string TempPath = FileName.Replace(@"img", @"imgTemp");
                    var Path = GetThumbnailImg.GetThumbnailPic(FileName, TempPath, 200, 200);
                    Image img = new Image();
                    img.ImageUrl = "~/img/Temp/" + System.IO.Path.GetFileName(Path);
                    this.Controls.Add(img);
                }
  • 相关阅读:
    dfs
    spring框架(3)— spring集合类的注入
    android入门 — Service
    android入门 — 多线程(一)
    android入门 — Activity启动模式
    android入门 — Activity生命周期
    android入门 — ProgressDialog/DatePickerDialog/TimePickerDialog
    Numpy入门
    Numpy入门
    Numpy入门
  • 原文地址:https://www.cnblogs.com/gouyanfeng/p/4209700.html
Copyright © 2011-2022 走看看