2011-07-20 22 views
4

私は、OpenXMLドキュメントに固執したいBitmapオブジェクトにイメージを格納しています。MemoryStream経由でBitmapをOpenXML ImagePartに書き込む

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

をそれは常にメディアフォルダに空のファイルをもたらし、PowerPointが画像の代わりにエラーを表示する次のように私は中間段階としてのMemoryStreamを使用してみました。私はMemoryStreamが画像データを正しく持っていることを知っています。問題なく、ファイルに書き込んだからです。 FileStreamからイメージをロードしようとすると、正常に動作します。

どのようにしてこのビットマップをOpenXMLドキュメントに入れることができますか?

答えて

9

私はBitmapを保存した後、MemoryStreamの位置を最初にリセットする必要がありました。ラインはSaveFeedData呼び出しの間に追加されるべきであることを

ms.Position = 0; 

関連する問題