您的位置:首页 > 其它

Image与Base64字符串相互转换

2006-08-31 15:31 459 查看
public class Form1 : System.Windows.Forms.Form
{
private string GetBase64String(System.Drawing.Image image)
{
System.IO.MemoryStream ms = new System.IO.MemoryStream();

image.Save(ms, System.Drawing.Imaging.ImageFormat.Jpeg);
byte[] buffer = ms.ToArray();

return Convert.ToBase64String(buffer);
}
private string FixBase64ForImage(string ImageText)
{
System.Text.StringBuilder sbText = new System.Text.StringBuilder(ImageText, ImageText.Length);
sbText.Replace("/r/n", String.Empty);
sbText.Replace(" ", String.Empty);
return sbText.ToString();
}

private Image GetImageFromBase64String(string ImageText)
{
if (ImageText.Length > 0)
{
Byte[] bitmapData = new Byte[ImageText.Length];

//bitmapData = Convert.FromBase64String(FixBase64ForImage(ImageText));
bitmapData = Convert.FromBase64String(ImageText);
System.IO.MemoryStream streamBitmap = new System.IO.MemoryStream(bitmapData);
// Bitmap bitImage = new Bitmap((Bitmap)Image.FromStream(streamBitmap));
return Image.FromStream(streamBitmap);
}
else
{
return null;
}
}

//===============

void Button3Click(object sender, System.EventArgs e)
{
string str = GetBase64String(pictureBox1.Image);
richTextBox1.Text = str;
pictureBox1.Image = null;
}

void Button4Click(object sender, System.EventArgs e)
{
pictureBox1.Image = GetImageFromBase64String(richTextBox1.Text);
}
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: