[HttpPost]
public ActionResult Upload(HttpPostedFileBase file)
{
JsonResult jrResult = new JsonResult();
if (file == null)
{
jrResult.Data = new { success = false, errors = "没有文件!" };
return jrResult;
}
//获取文件大小
int fileSize = (int)(file.InputStream.Length)/1024;//求出图片有多少kb
var fdf = file.ContentLength;
if (fileSize>(int)(1 * 10)) {
var errorsf = "图片太大";
}
//获取图片宽和高
System.Drawing.Image image = System.Drawing.Image.FromStream(file.InputStream);
int width = image.Width-10;
int height = image.Height-10;
var type = file.InputStream.GetType();
var ZFileName = Guid.NewGuid().ToString("N") + file.FileName;
string FileType = Path.GetExtension(file.FileName).ToLower();
//获取文件类型
if (FileType != ".jpg" && FileType != ".gif") {
jrResult.Data = new { result = false, errors = "图片格式不对!" };
var errors = "图片格式不对!";
//return jrResult;
}
//缩略图
Bitmap bitmap = new Bitmap(width, height, PixelFormat.Format32bppArgb);
Graphics g = Graphics.FromImage(bitmap);
g.InterpolationMode = System.Drawing.Drawing2D.InterpolationMode.High; //设置高质量插值法
g.SmoothingMode = System.Drawing.Drawing2D.SmoothingMode.HighQuality;//设置高质量,低速度呈现平滑程度
g.Clear(Color.Transparent); //清空画布并以透明背景色填充
g.DrawImage(image, new Rectangle(0, 0, width, height), new Rectangle(0, 0, width, height), GraphicsUnit.Pixel);
g.DrawString("传智播客", new Font("黑体", 14.0f, FontStyle.Bold), Brushes.Red, new PointF(150, 200));
string upfilepath2 = "~/Upload/min_" + ZFileName; //缩略图为原图后缀增加_m用于区分
var upfilepathee= Path.Combine(Request.MapPath("/Upload"), Path.GetFileName(upfilepath2));
string oFullName = Server.MapPath(ZFileName);
string tFullName = Server.MapPath(upfilepath2);
//判断文件夹是否存在
string directoryPath = Server.MapPath("~/Upload");
if (!Directory.Exists(directoryPath)) {
Directory.CreateDirectory(Server.MapPath("~/Upload/"));
}
var fileName = Path.Combine(Request.MapPath("/Upload"), Path.GetFileName(ZFileName));
try
{
bitmap.Save(tFullName);
file.SaveAs(fileName);
fileName = "/Upload/" + Path.GetFileName(ZFileName);
string s = System.Web.Configuration.WebConfigurationManager.ConnectionStrings["ImgPath"].ToString() + fileName;
jrResult.Data = new { result = true, Img = s };
return jrResult;
}
catch
{
jrResult.Data = new { result = false, errors = "上传失败!" };
return jrResult;
}
}
public ActionResult Upload(HttpPostedFileBase file)
{
JsonResult jrResult = new JsonResult();
if (file == null)
{
jrResult.Data = new { success = false, errors = "没有文件!" };
return jrResult;
}
//获取文件大小
int fileSize = (int)(file.InputStream.Length)/1024;//求出图片有多少kb
var fdf = file.ContentLength;
if (fileSize>(int)(1 * 10)) {
var errorsf = "图片太大";
}
//获取图片宽和高
System.Drawing.Image image = System.Drawing.Image.FromStream(file.InputStream);
int width = image.Width-10;
int height = image.Height-10;
var type = file.InputStream.GetType();
var ZFileName = Guid.NewGuid().ToString("N") + file.FileName;
string FileType = Path.GetExtension(file.FileName).ToLower();
//获取文件类型
if (FileType != ".jpg" && FileType != ".gif") {
jrResult.Data = new { result = false, errors = "图片格式不对!" };
var errors = "图片格式不对!";
//return jrResult;
}
//缩略图
Bitmap bitmap = new Bitmap(width, height, PixelFormat.Format32bppArgb);
Graphics g = Graphics.FromImage(bitmap);
g.InterpolationMode = System.Drawing.Drawing2D.InterpolationMode.High; //设置高质量插值法
g.SmoothingMode = System.Drawing.Drawing2D.SmoothingMode.HighQuality;//设置高质量,低速度呈现平滑程度
g.Clear(Color.Transparent); //清空画布并以透明背景色填充
g.DrawImage(image, new Rectangle(0, 0, width, height), new Rectangle(0, 0, width, height), GraphicsUnit.Pixel);
g.DrawString("传智播客", new Font("黑体", 14.0f, FontStyle.Bold), Brushes.Red, new PointF(150, 200));
string upfilepath2 = "~/Upload/min_" + ZFileName; //缩略图为原图后缀增加_m用于区分
var upfilepathee= Path.Combine(Request.MapPath("/Upload"), Path.GetFileName(upfilepath2));
string oFullName = Server.MapPath(ZFileName);
string tFullName = Server.MapPath(upfilepath2);
//判断文件夹是否存在
string directoryPath = Server.MapPath("~/Upload");
if (!Directory.Exists(directoryPath)) {
Directory.CreateDirectory(Server.MapPath("~/Upload/"));
}
var fileName = Path.Combine(Request.MapPath("/Upload"), Path.GetFileName(ZFileName));
try
{
bitmap.Save(tFullName);
file.SaveAs(fileName);
fileName = "/Upload/" + Path.GetFileName(ZFileName);
string s = System.Web.Configuration.WebConfigurationManager.ConnectionStrings["ImgPath"].ToString() + fileName;
jrResult.Data = new { result = true, Img = s };
return jrResult;
}
catch
{
jrResult.Data = new { result = false, errors = "上传失败!" };
return jrResult;
}
}