【问题标题】:Aspose - Convert Excel to PDF is SlowAspose - 将 Excel 转换为 PDF 很慢
【发布时间】:2019-07-12 14:10:41
【问题描述】:
我正在使用 Aspose,将 Excel 转换为 PDF 非常慢。
我已经生成了 XSSFWorkbook
ByteArrayOutputStream excelAsByteArrayOutStream = new ByteArrayOutputStream();
xssfWorkbook.write(out_excel);
excelAsByteArrayOutStream.close();
ByteArrayOutputStream pdfAsByteArrayOutStream = new ByteArrayOutputStream();
Workbook workbook = new Workbook(new ByteArrayInputStream(excelAsByteArrayOutStream.toByteArray()));
workbook.save(out, SaveFormat.PDF);
任何其他更快的方法来实现这一点。
【问题讨论】:
标签:
java
excel
pdf
aspose
【解决方案1】:
通常,Aspose.Cells for Java 可以快速高效地将较大的 MS Excel 工作簿转换为 PDF 文件格式。我猜缓慢问题可能出在正在写入字节数组的 XSSFWorkbook 部分。或者问题可能出在用于从流中提取/加载文件的模块中。为了确认,您只能使用 Aspose.Cells API(不涉及 XSSFWorkbook)从流中加载文件,然后保存为 PDF 文件格式。
例如
示例代码:
Path fileLocation = Paths.get("your_file.xlsx");
byte[] bytes = Files.readAllBytes(fileLocation);
try (FileOutputStream simpleStream = new FileOutputStream("no_aspose_file.xlsx")) {
simpleStream.write(bytes);
}
Workbook workbook = new Workbook(new ByteArrayInputStream(bytes));
ByteArrayOutputStream dstStream = new ByteArrayOutputStream();
PdfSaveOptions saveOptions = new PdfSaveOptions(SaveFormat.PDF);
// Save Workbook to PDF format by passing the object of PdfSaveOptions
workbook.save(dstStream, saveOptions);
..........
我建议您尝试具有更多增强功能的最新版本/修复 v19.8。
PS。我在 Aspose 担任支持开发人员/传播者。