gpt4 book ai didi

c# - 为上传的图像创建缩略图

转载 作者:太空宇宙 更新时间:2023-11-03 12:37:18 25 4
gpt4 key购买 nike

我有一个 asp.net mvc 应用程序,我可以在其中一次上传多张图片并且工作正常,但我在使用原始图片创建缩略图时遇到问题。

代码如下:

[HttpPost]
public ActionResult SaveUploadedFile()
{
bool isSavedSuccessfully = true;
string fName = "";

try
{
foreach (string fileName in Request.Files)
{
HttpPostedFileBase file = Request.Files[fileName];

fName = file.FileName;

if (file != null && file.ContentLength > 0)
{
var originalDirectory = new DirectoryInfo(string.Format("{0}Images", Server.MapPath(@"\")));

string pathString = Path.Combine(originalDirectory.ToString(), "Gallery");
string pathString2 = Path.Combine(originalDirectory.ToString(), "Gallery\\Thumbs");

//var fileName1 = Path.GetFileName(file.FileName);

bool exists = Directory.Exists(pathString);
bool exists2 = Directory.Exists(pathString2);

if (!exists)
Directory.CreateDirectory(pathString);

if (!exists2)
Directory.CreateDirectory(pathString2);

var path = string.Format("{0}\\{1}", pathString, file.FileName);

file.SaveAs(path);

//WebImage img = new WebImage(file.InputStream);
WebImage img = new WebImage(fileName);
//if (img.Width > 1000)
img.Resize(100, 100);
img.Save(pathString2);

}

}

}
catch (Exception ex)
{
isSavedSuccessfully = false;
}

if (isSavedSuccessfully)
{
return Json(new { Message = fName });
}
else
{
return Json(new { Message = "Error in saving file" });
}
}

所以基本上 file.SaveAs(path); 是最后一行有效的,我实际上保存了图像,但在该行之后我尝试创建并保存拇指但它不起作用(我不过,请务必获取之前创建的 Thumbs 文件夹)。

我也得到了 Error in saving file 响应,但那是因为我正在尝试创建和保存拇指,如果我删除它,那么我就不会得到它,我不知道如何返回实际错误以实际查看错误是什么。

最佳答案

答案是这样的:

var path2 = string.Format("{0}\\{1}", pathString2, file.FileName)

WebImage img = new WebImage(file.InputStream);
img.Resize(250, 250);
img.Save(path2);

关于c# - 为上传的图像创建缩略图,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40449998/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com