zoukankan      html  css  js  c++  java
  • 一个.net缩放图片保存的例子

    //原始图片名称
    string originalFilename = Server.MapPath("images/original.jpg");
    //生成的高质量图片名称
    string strGoodFile = Server.MapPath("images/small-good.jpg");
    //生成的低质量图片名称
    string strBadFile = Server.MapPath("images/small-bad.jpg");
    //缩小的倍数
    int iScale = 3;
    //从文件取得图片对象
    System.Drawing.Image image = System.Drawing.Image.FromFile(originalFilename);
    //取得图片大小
    System.Drawing.Size size = new Size(image.Width / iScale, image.Height / iScale);
    
    //新建一个bmp图片
    System.Drawing.Image bitmap = new System.Drawing.Bitmap(size.Width, size.Height);
    //新建一个画板
    System.Drawing.Graphics g = System.Drawing.Graphics.FromImage(bitmap);
    //设置高质量插值法
    g.InterpolationMode = System.Drawing.Drawing2D.InterpolationMode.High;
    //设置高质量,低速度呈现平滑程度
    g.SmoothingMode = System.Drawing.Drawing2D.SmoothingMode.HighQuality;
    //清空一下画布
    g.Clear(Color.Blue);
    //在指定位置画图
    g.DrawImage(image, new System.Drawing.Rectangle(0, 0, bitmap.Width, bitmap.Height),
                new System.Drawing.Rectangle(0, 0, image.Width, image.Height),
                System.Drawing.GraphicsUnit.Pixel);
    //保存高清晰度的缩略图
    bitmap.Save(strGoodFile, System.Drawing.Imaging.ImageFormat.Jpeg);
    //取得原图像的普通缩略图
    System.Drawing.Image img = image.GetThumbnailImage(image.Width / iScale, image.Height / iScale, null, IntPtr.Zero);
    //保存普通缩略图
    img.Save(strBadFile, System.Drawing.Imaging.ImageFormat.Jpeg);
    g.Dispose();
    //MessageBox.Show("生成完毕");
  • 相关阅读:
    逆序数 POJ 2299 Ultra-QuickSort
    DP URAL 1244 Gentlemen
    找规律 SGU 107 987654321 problem
    找规律 SGU 126 Boxes
    DP VK Cup 2012 Qualification Round D. Palindrome pairs
    模拟 Coder-Strike 2014
    模拟 Codeforces Round #203 (Div. 2) C. Bombs
    DFS HDOJ 2614 Beat
    最短路(Floyd_Warshall) POJ 2240 Arbitrage
    最短路(Floyd_Warshall) POJ 1125 Stockbroker Grapevine
  • 原文地址:https://www.cnblogs.com/CoderWayne/p/4485672.html
Copyright © 2011-2022 走看看