Klasse die ein Image zu einem Base64-String und einen Base64-String in ein Image wandeln kann.
Verwendung zB um ein Image in XML zu speichern.
using System;
using System.Drawing;
namespace gfoidl.Tools.Images
{
/// <summary>
/// Wandelt ein Bild in einen Base64-String und zurück
/// </summary>
public class ImageToString
{
/// <summary>
/// Konvertiert ein Bild in einen Base64-String
/// </summary>
/// <param name="image">
/// Zu konvertierendes Bild
/// </param>
/// <returns>
/// Base64 Repräsentation des Bildes
/// </returns>
public static string GetStringFromImage(Image image)
{
if (image != null)
{
ImageConverter ic = new ImageConverter();
byte[] buffer = (byte[])ic.ConvertTo(image, typeof(byte[]));
return Convert.ToBase64String(
buffer,
Base64FormattingOptions.InsertLineBreaks);
}
else
return null;
}
//---------------------------------------------------------------------
/// <summary>
/// Konvertiert einen Base64-String zu einem Bild
/// </summary>
/// <param name="base64String">
/// Zu konvertierender String
/// </param>
/// <returns>
/// Bild das aus dem String erzeugt wird
/// </returns>
public static Image GetImageFromString(string base64String)
{
byte[] buffer = Convert.FromBase64String(base64String);
if (buffer != null)
{
ImageConverter ic = new ImageConverter();
return ic.ConvertFrom(buffer) as Image;
}
else
return null;
}
}
}
1 Kommentare zum Snippet