/// <summary> /// 上传图片 /// </summary> /// <returns></returns> public static ImgUploadRet UploadImag(HttpPostedFileBase httpPostedFileBase, params ImgFormat[] imgFormatList) { ImgUploadRet imgRet = new ImgUploadRet(); //通过标准构造函数 //string jsonText = "{'ret':1,'msg':'123'}"; string jsonText = uploadPicByHttp(httpPostedFileBase, imgFormatList); JObject jObject = JObject.Parse(jsonText); imgRet.Ret = jObject.Property("ret").Value.ToString().ToSimpleT <int>(1); imgRet.Msg = jObject.Property("msg").Value.ToString(); if (imgRet.Ret == 0) { JArray ja = (JArray)JsonConvert.DeserializeObject(jObject.Property("urls").Value.ToString()); Dictionary <int, string> dic = new Dictionary <int, string>(); for (int i = 0; i < ja.Count; i++) { var id = ja[i]["Key"].ToString().ToSimpleT <int>(0); var uri = ja[i]["Value"].ToString(); dic.Add(id, uri); } imgRet.ImgUrls = dic; return(imgRet); } else { return(imgRet); } }
//网络图片本地化上传 /// <param name="imgUrl">图片网络地址</param> /// <param name="formatType">剪裁方式</param> /// <param name="width">宽</param> /// <param name="high">高</param> public static ImgData doImgUpLoad(string imgUrl, ImgFormatType formatType = ImgFormatType.ScaleWith, int width = 500, int high = 800) { ImgData data = new ImgData(); //开始处理图片相关 if (!string.IsNullOrEmpty(imgUrl) && (imgUrl.StartsWith("http://") || imgUrl.StartsWith("https://"))) { //开始上传图片 ImgUploadRet imgRet = ImgUtil.UploadImag(imgUrl, new ImgFormat(1, formatType, width, high)); if (imgRet.IsSuc) { data.img_default = imgRet.GetImgUrl(0); //本地化原尺寸地址 data.img_specify = imgRet.GetImgUrl(1); //本地化后生成的指定规格 300*225后的地址 data.img_original = imgUrl; //_logger.Error("----doImgUpLoad--- img_original: " + imgUrl + " img_default:" + data.img_default + " img_specify:"+data.img_specify); } else //失败 { data.img_default = ""; // data.img_specify = ""; // data.img_original = imgUrl; } } return(data); }