/// <summary>
/// base64转图片保存
/// </summary>
/// <param name="BsStr"></param>
/// <returns></returns>
public static string Base64toImage(string BsStr)
{
string ThisStation = ConfigurationManager.AppSettings["Domain"];//获取域名前缀
BsStr = BsStr.Replace("data:image/png;base64,", "").Replace("data:image/jgp;base64,", "").Replace("data:image/jpg;base64,", "").Replace("data:image/jpeg;base64,", "");//将base64头部信息替换
byte[] bytes = Convert.FromBase64String(BsStr);
MemoryStream memStream = new MemoryStream(bytes);
string TimePath = $@"/{DateTime.Now.Year}/{DateTime.Now.Month}/";
System.Drawing.Image mImage = System.Drawing.Image.FromStream(memStream);
string DIr = System.Web.HttpContext.Current.Server.MapPath("~/UploadFile/ActivePic"+ TimePath);
if (!Directory.Exists(DIr))
{
Directory.CreateDirectory(DIr);
}
//Bitmap bp = new Bitmap(mImage);
string Name = Guid.NewGuid().ToString("N")+".jpg";
string FileName = DIr + Name;
mImage.Save(FileName, System.Drawing.Imaging.ImageFormat.Jpeg);//注意保存路径
string OutFileName = string.IsNullOrEmpty(ThisStation)?"":ThisStation+@"/UploadFile/ActivePic" + TimePath+Name;
return OutFileName;
}
替换 html标签 img里的图片:
public static string ImageOutToFile(string StringIn)
{
HtmlDocument Html = new HtmlDocument();
Html.LoadHtml(StringIn);
HtmlNodeCollection images = Html.DocumentNode.SelectNodes("//img");
if (images != null)
{
for (int i = 0; i < images.Count; i++)
{
if (images[i].Attributes["src"] != null)
{
string BsStr = images[i].Attributes["src"].Value;//获取数据base64数据
if (BsStr.Length > 150)//大于50可以成bas64
{
string ImageScr = Base64toImage(BsStr);
images[i].Attributes["src"].Value = ImageScr;
}
}
}
}
return Html.DocumentNode.InnerHtml;
}

2326

被折叠的 条评论
为什么被折叠?



