• [C#]asp.net生成高清晰缩略图


    Code
    /// <summary> 
    /// 生成缩略图 
    /// </summary> 
    /// <param name="originalImagePath">源图路径(物理路径)</param> 
    /// <param name="thumbnailPath">缩略图路径(物理路径)</param> 
    /// <param name="width">缩略图宽度</param> 
    /// <param name="height">缩略图高度</param>   
    public  void MakeThumbnail(string originalImagePath, string thumbnailPath, int width, int height) 

        System.Drawing.Image   originalImage 
    = System.Drawing.Image.FromFile(originalImagePath); 

        
    int towidth = 0
        
    int toheight =0
        
    if(originalImage.Width>width &&originalImage.Height<height) 
        { 
        towidth 
    = width; 
        toheight 
    = originalImage.Height; 
        } 

        
    if (originalImage.Width<width && originalImage.Height >height) 
        { 
        towidth 
    = originalImage.Width; 
        toheight 
    = height; 
        } 
        
    if (originalImage.Width > width && originalImage.Height > height) 
        { 
        towidth 
    = width; 
        toheight 
    = height; 
        } 
        
    if (originalImage.Width < width && originalImage.Height < height) 
        { 
        towidth 
    = originalImage.Width; 
        toheight 
    = originalImage.Height; 
        } 
        
    int x = 0;//左上角的x坐标 
        int y = 0;//左上角的y坐标 
        

        
    //新建一个bmp图片 
        System.Drawing.Image bitmap = new System.Drawing.Bitmap(towidth, toheight); 

        
    //新建一个画板 
        Graphics g = System.Drawing.Graphics.FromImage(bitmap); 

        
    //设置高质量插值法 
        g.InterpolationMode = System.Drawing.Drawing2D.InterpolationMode.High; 

        
    //设置高质量,低速度呈现平滑程度 
        g.SmoothingMode = System.Drawing.Drawing2D.SmoothingMode.HighQuality; 

        
    //清空画布并以透明背景色填充 
        g.Clear(Color.Transparent); 

        
    //在指定位置并且按指定大小绘制原图片的指定部分 
        g.DrawImage(originalImage,x,y,towidth,toheight); 

        
    try 
        { 
        
    //以jpg格式保存缩略图 
        bitmap.Save(thumbnailPath, System.Drawing.Imaging.ImageFormat.Jpeg); 
        } 
        
    catch (System.Exception e) 
        { 
        
    throw e; 
        } 
        
    finally 
        { 
        originalImage.Dispose(); 
        bitmap.Dispose(); 
        g.Dispose(); 
        } 
    }
  • 相关阅读:
    iview正在加载和关闭加载
    vue实现input输入框只能输入中文
    vue添加遮罩
    JSONP的实现原理
    vue-resource 实现 get, post, jsonp请求
    vue实例的生命周期
    IDE更新索引
    org.apache.tomcat.util.bcel.classfile.ClassFormatException: Invalid byte tag in constant pool: 19
    springmvc过滤的静态资源不起作用
    mybatis返回集合类型为map时
  • 原文地址:https://www.cnblogs.com/qumao5736/p/1374372.html
Copyright © 2020-2023  润新知