• 企业400电话
  • 微网小程序
  • AI电话机器人
  • 电商代运营
  • 全 部 栏 目

    企业400电话 网络优化推广 AI电话机器人 呼叫中心 网站建设 商标✡知产 微网小程序 电商运营 彩铃•短信 增值拓展业务
    asp.net 图片超过指定大小后等比例压缩图片的方法

    复制代码 代码如下:

    /// summary>
            /// 压缩图片
            /// /summary>
            /// returns>/returns>
            public string ResizePic()
            {
                #region 压缩图片开始
                bool IsImgFile = true;  //判断是否为图片文件
                string filePathName = "123";   //文件存储的路径(文件夹名称)
                string fileName = "a.jpg";   //上传文件的原始名称
                string fileSysName = DateTime.Now.ToString("yyyyMMddHHmmssfff") + "_" + fileName;  //修改后的文件名称
                string filePath = "";   //文件路径
                string strImgPath = "/fileupload/";   //上传路径
                if (IsImgFile)
                {
                    int maxWidth = 600;   //图片宽度最大限制
                    int maxHeight = 400;  //图片高度最大限制
                    System.Drawing.Image imgPhoto =
                        System.Drawing.Image.FromFile(Server.MapPath(strImgPath) + filePathName + "/" + fileSysName);
                    int imgWidth = imgPhoto.Width;
                    int imgHeight = imgPhoto.Height;
                    if (imgWidth > imgHeight)  //如果宽度超过高度以宽度为准来压缩
                    {
                        if (imgWidth > maxWidth)  //如果图片宽度超过限制
                        {
                            float toImgWidth = maxWidth;   //图片压缩后的宽度
                            float toImgHeight = imgHeight / (float)(imgWidth / toImgWidth); //图片压缩后的高度

                            System.Drawing.Bitmap img = new System.Drawing.Bitmap(imgPhoto,
                                                                                  int.Parse(toImgWidth.ToString()),
                                                                                  int.Parse(toImgHeight.ToString()));
                            string strResizePicName = Server.MapPath(strImgPath) + filePathName + "/_small_" + fileSysName;
                            img.Save(strResizePicName);  //保存压缩后的图片
                            filePath = strImgPath + filePathName + "/_small_" + fileSysName;  //返回压缩后的图片路径
                        }
                    }
                    else
                    {
                        if (imgHeight > maxHeight)
                        {
                            float toImgHeight1 = maxHeight;
                            float toImgWidth1 = imgWidth / (float)(imgHeight / toImgHeight1);

                            System.Drawing.Bitmap img = new System.Drawing.Bitmap(imgPhoto,
                                                                                  int.Parse(toImgWidth1.ToString()),
                                                                                  int.Parse(toImgHeight1.ToString()));
                            string strResizePicName = Server.MapPath(strImgPath) + filePathName + "/_small_" + fileSysName;
                            img.Save(strResizePicName);
                            filePath = strImgPath + filePathName + "/_small_" + fileSysName;
                        }
                    }
                }
                return filePath;
                #endregion
            }

    您可能感兴趣的文章:
    • 利用ASPUPLOAD,ASPJPEG实现图片上传自动生成缩略图及加上水印
    • Asp无组件生成缩略图的代码
    • ASP保存远程图片到本地 同时取得第一张图片并创建缩略图的代码
    • ASP.Net 上传图片并生成高清晰缩略图
    • asp.net 自定义控件实现无刷新上传图片,立即显示缩略图,保存图片缩略图
    • Asp.Net平台下的图片在线裁剪功能的实现代码(源码打包)
    • ASP组件AspJpeg(加水印)生成缩略图等使用方法
    • ASP.NET简单好用功能齐全图片上传工具类(水印、缩略图、裁剪等)
    • ASP固定比例裁剪缩略图的方法
    上一篇:aspx是什么格式 ASPX文件怎么打开
    下一篇:.NET下为百度文本编辑器UEditor增加图片删除功能示例
  • 相关文章
  • 

    © 2016-2020 巨人网络通讯 版权所有

    《增值电信业务经营许可证》 苏ICP备15040257号-8

    asp.net 图片超过指定大小后等比例压缩图片的方法 asp.net,图片,超过,指定,大小,