【问题标题】:mvc3 ImageResizermvc3 图像调整器
【发布时间】:2012-12-28 04:26:45
【问题描述】:

我下载了 Nugent ImageResizer,并尝试按照此页面上的示例 http://imageresizing.net/docs/managed 调整上传图片的大小,但我看不到将其放入 Var 或 Image 变量中,因此我可以在 Path.Combine 这是代码

var fileName = Path.GetFileName(file.FileName);
                var changename = getid + "_" + fileName;
          ImageBuilder.Current.Build(changename, changename,
                                                       new ResizeSettings("width=130&height=130"));

            var path = Path.Combine(Server.MapPath("~/uploads/profilepic"), changename);
                file.SaveAs(path);

如何在 var 或某种类型的图像变量中获取 ImageBuilder 我想做的是这样的

        var resized=  ImageBuilder.Current.Build(changename, changename,
                                                       new ResizeSettings("width=130&height=130"));
var path = Path.Combine(Server.MapPath("~/uploads/profilepic"), resized);
                file.SaveAs(path);

我要做的就是将 ImageBuilder 放在 Path.Combine 内而不会出错,我们将不胜感激。

【问题讨论】:

  • 你为什么不在System.Web.Helpers中使用WebImage
  • 我刚试过那个,但它给了我一个错误,这个名字空间是 using ImageResizer
  • 您是否在项目中添加了助手引用?
  • 检查 this 以调整图像大小
  • 是的,我把助手放在参考中,谢谢你的链接,我会检查出来的。

标签: asp.net-mvc-3 path imageresizer


【解决方案1】:

ImageResizer 应该直接给出上传的文件和输出路径

ImageResizer 支持 GUID 和路径清理。切勿按原样使用上传的文件名!

var i = new ImageJob(file, 
                    "~/uploads/profilepic/<guid>_<filename:A-Za-z0-9>.<ext>", 
                     new ResizeSettings("width=130&height=130&format=jpg"));
i.CreateParentDirectory = true; //Auto-create the uploads directory.
i.Build();

var newVirtualPath = ImageResizer.Util.PathUtils.GuessVirtualPath(i.FinalPath);

【讨论】:

    猜你喜欢
    • 2011-11-11
    • 1970-01-01
    • 1970-01-01
    • 2012-11-22
    • 1970-01-01
    • 2017-02-07
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多