public static class ImageBase64
{
/// <summary>
/// 图像转换为Base64编码
/// </summary>
/// <param name="image">图像</param>
/// <param name="format">图像格式</param>
/// <returns>转换成功返回其Base64编码;失败返回空串</returns>
public static string ImageToBase64(Image image, ImageFormat format)
{
string base64String = "";
using (MemoryStream ms = new MemoryStream())
{
image.Save(ms, format);
byte[] imageBytes = ms.ToArray();
base64String = Convert.ToBase64String(imageBytes);
}
return base64String;
}
/// <summary>
/// Base64编码转换为图像
/// </summary>
/// <param name="base64String">Base64字符串</param>
/// <returns>转换成功返回图像;失败返回null</returns>
public static Image Base64ToImage(string base64String)
{
MemoryStream ms = null;
Image image = null;
try
{
byte[] imageBytes = Convert.FromBase64String(base64String);
ms = new MemoryStream(imageBytes, 0, imageBytes.Length);
ms.Write(imageBytes, 0, imageBytes.Length);
image = Image.FromStream(ms, true);
}
catch
{
}
finally
{
if (ms != null) ms.Close();
}
return image;
}
}