Bitmap bmp; TypeConverter bmpConverter = TypeDescriptor.GetConverter(bmp.GetType()); byte[] bmpData = (byte[])bmpConverter.ConvertTo(bmp, typeof(byte[])); string bmp_str = Convert.ToBase64String(bmpData, Base64FormattingOptions.InsertLineBreaks);
Теперь полученную строку можем сохранить в XML:
XmlTextWriter writer = new XmlTextWriter(FileName, System.Text.Encoding.UTF8);
writer.Formatting = Formatting.Indented;
writer.WriteStartDocument();
writer.WriteStartElement("xmlElement");
writer.WriteString(bmp_str);
writer.WriteEndElement();
writer.WriteEndDocument();
Обратное преобразование из строки в Bitmap делаем так:
byte[] bmpData; bmpData = Convert.FromBase64String(bmp_str); MemoryStream stream = new MemoryStream(bmpData); bmp = new Bitmap(stream);
Вот все.
Приведенный метод работает как с небольшими, так и с достаточно крупными изображениями. Правда, хранить большие массивы данных в XML, наверное, не совсем удачная идея.

Как преобразовать Bitmap в строку текста и обратноЁ- C#.
