如何从.docx获取图像以使用Aspose.Words进行流式传输

时间:2015-09-24 10:15:26

标签: c# aspose.words

任务是用流替换磁盘操作。当.docx保存到磁盘时 - 效果很好。试图改变使用流。

有以下代码:

            var options = new HtmlSaveOptions(SaveFormat.Html)
            {
                ImageSavingCallback = new HandleImageSaving()
            };

            Stream stream = new MemoryStream();
            doc.Save(stream, options);
            stream.Position = 0;
        public class HandleImageSaving : IImageSavingCallback
        {
            void IImageSavingCallback.ImageSaving(ImageSavingArgs e)
            {
                // here e.IsImageAvailable == true 
                // but e.ImageStream == null
            }
        }

在doc.Save()上,它回调图像的图像流是空的 - 但图像存在于word文档中。

有什么想法吗?

1 个答案:

答案 0 :(得分:1)

e.ImageStream允许您指定要保存图像的流。如果此属性为null,则表示图像将保存到磁盘而不是流。您可以将流对象传递给此属性,并将图像保存到该流对象,例如

Stream imageStream = new MemoryStream();
e.ImageStream = imageStream;

这将在调用 ImageSaving 后将图像保存到imageStream对象。

我在Aspose担任开发人员传播者。