/// <summary>
/// .net64位编码转图片
/// </summary>
/// <param name="UrlPath">64位编码</param>
/// <returns></returns>
[HttpPost]
public string SaveImage(string UrlPath)
{
var path = ""; //项目存在路径
var guid = IdentityGenerator.NewSequentialGuid().ToString();
String base64 = UrlPath.Substring(UrlPath.IndexOf(",") + 1); //将‘,’以前的多余字符串删除
System.Drawing.Bitmap bitmap = null;//定义一个Bitmap对象,接收转换完成的图片
byte[] arr = Convert.FromBase64String(base64);//将纯净资源Base64转换成等效的8位无符号整形数组
System.IO.MemoryStream ms = new System.IO.MemoryStream(arr);//转换成无法调整大小的MemoryStream对象
bitmap = new System.Drawing.Bitmap(ms);//将MemoryStream对象转换成Bitmap对象
var filename = guid + ".png";//所要保存的相对路径及名字(声明一个string类型的相对路径)
//string url = HttpRuntime.AppDomainAppPath.ToString();
string tmpRootDir = Server.MapPath("~/Data/ChartImage/");
if (!Directory.Exists(tmpRootDir))
{
Directory.CreateDirectory(tmpRootDir);
}
string imagesurl2 = tmpRootDir + filename; //转换成绝对路径
//bitmap.Save(imagesurl2, System.Drawing.Imaging.ImageFormat.Jpeg);//保存到服务器路径
//bitmap.Save(filePath + ".bmp", System.Drawing.Imaging.ImageFormat.Bmp);
//bitmap.Save(filePath + ".gif", System.Drawing.Imaging.ImageFormat.Gif);
bitmap.Save(imagesurl2 + ".png", System.Drawing.Imaging.ImageFormat.Png);
ms.Close();//关闭当前流,并释放所有与之关联的资源
bitmap.Dispose();
return path;
}
.NET 64位编码转图片
于 2022-01-08 09:21:15 首次发布