我使用的aspose cells for .net V22.8 。我想在用系统导出EXCEL文件时,在指定的单元格中 插入多个pdf、word类型的文件,我从咱们的官网找到了对应的方法,但是好像是方法被弃用或删除了。SetEmbeddedObject | Aspose.Cells for .NET API 参考
这个方法我可以实现图片的嵌入,但是插入文件显示不出来
有一列支持性文件 那个框就是我需要添加的文件位置,我现在边框写进去了 但是文件写不进去。还有就是 我目前用的 OleObjects.Add这个方法进行实现的 他的参数里只有imagedata这个属性 想要用objectdata属性是不是有其他写法
5c72f0a909e585c4433852efb07a261.png (30.9 KB)
新建文件夹 (2).zip (124.8 KB)
@SalesDhorde
目前我们提供两个方法添加OleObject. 使用第二个方法你可以链接到文件。
Add(int upperLeftRow, int upperLeftColumn, int height, int width, byte[] imageData)
Add(int upperLeftRow, int upperLeftColumn, int height, int width, byte[] imageData,
string linkedFile)
请参考以下APIS:
你愿意提供你的样例代码和样例文件吗?我们很快就会检查。
就是按照这个方法,无法插入word或者pdf文件类型。
string FileUrl = GlobalContext.SystemConfig.ResourcePath + Path.DirectorySeparatorChar + item.SavedFilename;
FileStream fs = new FileStream(FileUrl, FileMode.Open);
byte[] fileData = new Byte[fs.Length];
//从流中获取图片到字节数组中。
fs.Read(fileData, 0, fileData.Length);
fs.Close();
fs = new FileStream(path + tempFileName, FileMode.Open);
byte[] objectData = new Byte[fs.Length];
fs.Read(objectData, 0, objectData.Length);
fs.Close(); wsModel.OleObjects.Add(4 + i, 20, 100, 80, fileData,fs.Name);
@SalesDhorde
你可以参考以下样例代码添加word和pdf文件。请查看附件。result.zip (293.4 KB)
样例代码如下:
Workbook wb = new Workbook(filePath + "20240524092154_导出OEB识别评估表_.xlsm");
Worksheet sheet = wb.Worksheets["OEB等级评估表"];
FileStream fs = new FileStream(filePath + "pdf.png", FileMode.Open);
byte[] pdfImageData = new Byte[fs.Length];
fs.Read(pdfImageData, 0, pdfImageData.Length);
fs.Close();
sheet.OleObjects.Add(0, 4, 100, 80, pdfImageData, filePath + "a.pdf");
fs = new FileStream(filePath + "docx.png", FileMode.Open);
byte[] docxImageData = new Byte[fs.Length];
fs.Read(docxImageData, 0, docxImageData.Length);
fs.Close();
sheet.OleObjects.Add(0, 8, 100, 80, docxImageData, filePath + "a.docx");
wb.Save(filePath + "out_net.xlsm");