C# Img与Base64转化帮助类


 1 using System;
 2 using System.Drawing;
 3 using System.Drawing.Imaging;
 4 using System.IO;
 5 
 6 namespace XiaoBai.Uril.ImgHelper
 7 {
 8     /// 
 9     /// Img与Base64转化的帮助类
10     /// 
11     public class Base64ImgHelper
12     {
13         /// 
14         /// Img转Base64的方法
15         /// 
16         /// bmp类型的图片数据
17         /// Img原来的格式
18         /// 
19         public string ImgToBase64Str(Bitmap bitmap, ImageFormat imgFromat)
20         {
21             try
22             {
23                 MemoryStream ms = new MemoryStream();
24                 bitmap.Save(ms, imgFromat);
25                 byte[] arr = new byte[ms.Length];
26                 ms.Position = 0;
27                 ms.Read(arr, 0, (int)ms.Length);
28                 ms.Close();
29 
30                 return Convert.ToBase64String(arr);
31             }
32             catch
33             {
34                 return null;
35             }
36         }
37 
38         /// 
39         /// Base64转Img的方法
40         /// img.Save("ImgName.png", ImageFormat.Png);
41         /// 
42         /// 图片源的Base64字节流
43         /// 
44         public System.Drawing.Image Base64StrToImg(string base64Str)
45         {
46             try
47             {
48                 byte[] arr = Convert.FromBase64String(base64Str);
49                 MemoryStream ms = new MemoryStream(arr);
50                 return System.Drawing.Image.FromStream(ms);
51 
52             }
53             catch
54             {
55                 return null;
56             }
57         }
58     }
59 }