繁体   English   中英

如何显示嵌入到c#.Net的aspose.word中的oleObject的内容

[英]how to display content of oleObject that embeded in aspose.word for c# .Net

我创建一个工作簿

            Document doc = new Document();
            var builder = new DocumentBuilder(doc);
            Workbook workbook = new Workbook();
            int i = workbook.Worksheets.Add();
            Worksheet sheet = workbook.Worksheets[i];

然后创建我的单元格,然后通过insertOleObject方法将其插入到我的文档中:

    MemoryStream memorystream = new MemoryStream();
                workbook.Save(memorystream, Aspose.Cells.SaveFormat.Xlsx);
                byte[] bytes = memorystream.ToArray();
Shape oleObject = builder.InsertOleObject(memorystream, "Excel.Sheet.2", false, null);

我希望我在工作簿中构建的工作表可以显示为表格,但是不会发生。

如我在此处所示,请再添加一行代码,它应该可以解决您的问题。 让我们知道您的反馈。

C#

MemoryStream memorystream = new MemoryStream();
workbook.Save(memorystream, Aspose.Cells.SaveFormat.Xlsx);
//Add this line
memorystream.Position = 0;

这是完整的可运行代码,供您参考。

标题:将 Microsoft Excel Ole对象插入Microsoft Word文档

C#

Document doc = new Document();
var builder = new DocumentBuilder(doc);

Workbook workbook = new Workbook();

Worksheet sheet = workbook.Worksheets[0];
sheet.Cells["D3"].PutValue("This is sample data.");
sheet.Cells["J20"].PutValue("End");

MemoryStream memorystream = new MemoryStream();
workbook.Save(memorystream, Aspose.Cells.SaveFormat.Xlsx);
memorystream.Position = 0;

Aspose.Words.Drawing.Shape shp = builder.InsertOleObject(memorystream, "Excel.Sheet.12", false, null);

doc.Save("Output.docx");

注意: 我在Aspose担任开发人员布道者

我修改了莎克尔(Shakeel)在对他的回答的评论中所说的代码,然后完成了:

 MemoryStream memorystream = new MemoryStream();
            workbook.Save(memorystream, Aspose.Cells.SaveFormat.Xlsx);
            byte[] bytes = memorystream.ToArray();
            memorystream.Position = 0;
            // Apply different Image and Print options
            var options = new Aspose.Cells.Rendering.ImageOrPrintOptions
            {
                HorizontalResolution = 200,
                VerticalResolution = 200
            };
            // Set Horizontal Resolution
            // Set Vertical Resolution
            var sr = new SheetRender(sheet, options);
            MemoryStream imageStream = new MemoryStream();
            sr.ToImage(0, imageStream);
            System.Drawing.Image image = Image.FromStream(imageStream);
            Shape oleObject = builder.InsertOleObject(memorystream, "Excel.Sheet.12", false, image);

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM