예제 #1
0
        /// <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);
            }
        }
예제 #2
0
        //网络图片本地化上传
        /// <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);
        }