Запись Bitmap в OpenXML ImagePart через MemoryStream

У меня есть изображение, хранящееся в объекте Bitmap, которое я хотел бы вставить в документ OpenXML. Я пробовал использовать MemoryStream в качестве промежуточного шага, как показано ниже:

ImagePart part = container.AddNewPart<ImagePart>("image/jpeg", imageId);
using (MemoryStream ms = new MemoryStream())
{
    bitmap.Save(ms, ImageFormat.Jpeg);
    part.FeedData(ms);
}

, но это всегда приводит к пустым файлам в папке мультимедиа и PowerPoint, отображающим ошибку вместо изображений. Я знаю, что MemoryStream правильно имеет данные изображения, поскольку я без проблем записал их в файл. Когда я пытаюсь загрузить изображение из FileStream, оно работает нормально.

Как мне вставить это Bitmap в документ OpenXML?

6
задан Matthew Jacobs 20 July 2011 в 17:19
поделиться