public ContentResult imgpress(string name, int height, int width, int per) { string sourceFile = Server.MapPath("~/Content/images/" + name); //源图存放目录 string newNewDir = Server.MapPath("~/Content/pressimg/"); //新图存放目录 string newFile = string.Empty; //新图路径 string result = ""; string n = name.Substring(0, name.Length - 4); newFile = Path.Combine(newNewDir, n + "w_定高按宽度缩放.jpg"); bool r = ImageCompress.Thumbnail(sourceFile, newFile, height, width, 80, ImageCompress.ZoomType.H); result += r.ToString(); newFile = Path.Combine(newNewDir, n + "w_定宽按高度缩放.jpg"); r = ImageCompress.Thumbnail(sourceFile, newFile, height, width, 80, ImageCompress.ZoomType.W); result += r.ToString(); newFile = Path.Combine(newNewDir, n + "wh_指定高宽缩放.jpg"); r = ImageCompress.Thumbnail(sourceFile, newFile, height, width, 80, ImageCompress.ZoomType.WH); result += r.ToString(); newFile = Path.Combine(newNewDir, n + "wh_指定高宽裁剪.jpg"); r = ImageCompress.Thumbnail(sourceFile, newFile, height, width, 80, ImageCompress.ZoomType.Cut); result += r.ToString(); newFile = Path.Combine(newNewDir, n + "原图%" + per + ".jpg"); r = ImageCompress.Cut(sourceFile, newFile, height, width, per, true); result += r.ToString(); newFile = Path.Combine(newNewDir, n + "h_w指定高宽缩放.jpg"); r = ImageCompress.Cut(sourceFile, newFile, height, width, 30, false); result += r.ToString(); newFile = Path.Combine(newNewDir, n + "正方形裁剪.jpg"); ImageCutZoom.CutForSquare(sourceFile, newFile, 200, 90); newFile = Path.Combine(newNewDir, n + "180_240.jpg"); ImageCutZoom.CutForCustom(sourceFile, newFile, 240, 180, 100); newFile = Path.Combine(newNewDir, n + "等比180_240.jpg"); ImageCutZoom.ZoomAuto(sourceFile, newFile, 240, 180, "", ""); return(Content(result)); }
public override int Process(UploadImageContext context) { _logger.Debug("ImageThumbnailProcess"); try { Size thumbnailSize = GetThumbnailSize(context.ImageStream); var stream = ImageCompress.CompressImage(context.ImageFormat, context.ImageStream, thumbnailSize, false); string fileName = FileUtils.SaveImage(stream, context.ImageExt, ImageStoreSettings.ThumbDir); context.ThumbUrl = ImageStoreSettings.ThumbUrl + fileName; _logger.InfoFormat("ImageSourceProcesser Complete, fileName:{0}, compressUrl:{1}", fileName, context.CompressUrl); } catch (Exception e) { _logger.Error(e.Message); return(ImageErrorMessage.ImageUndefinedError); } return(NextProcesser.Process(context)); }
public override int Process(UploadImageContext context) { _logger.Info("ImageCompressionProcesser"); try { Size size = GetImageSize(context); var stream = ImageCompress.CompressImage(context.ImageFormat, context.ImageStream, size, true); string fileName = FileUtils.SaveImage(stream, context.ImageExt, ImageStoreSettings.CompressDir); context.CompressUrl = ImageStoreSettings.CompressUrl + fileName; _logger.InfoFormat("ImageCompressionProcesser Complete, fileName:{0}, compressUrl:{1}", fileName, context.CompressUrl); } catch (Exception e) { _logger.Error(e.Message); _logger.Error(e.StackTrace); return(ImageErrorMessage.ImageUndefinedError); } return(NextProcesser.Process(context)); }
private Size GetThumbnailSize(Stream stream) { return(ImageCompress.GetSizeByType(stream, ImageConstants.MaxSmallimageWidth, ImageConstants.MaxSmallimageHeight)); }