从 Excel 生成 PDF 时出现问题
Issue while generating PDF from Excel
我有一个 excel 文件,其中有两个图表(饼图 和 圆环图)。这些图表是通过引用其他工作表的单元格创建的。但是,当我将文件保存为 PDF 时,第二张图表(圆环图)未在 pdf 中呈现。
这是 Java 中 Aspose Cells 的示例代码。
import com.aspose.cells.*
class AsposeCellTesting {
public static void main(String[] args) {
generatePDF()
}
public static void generatePDF(){
Workbook workbook = new Workbook(new FileInputStream(new File("new_imp.xlsx")));
println "Number of sheets = ${workbook.getWorksheets().getCount()}"
for (int j = 0; j < workbook.getWorksheets().getCount(); j++) {
if(shouldExclude(workbook.getWorksheets().get(j).getName())){
workbook.getWorksheets().get(j).setVisible(false);
}else{
// do nothing
}
}
workbook.calculateFormula();
workbook.save("DONUT_CHART.pdf");
}
public static Boolean shouldExclude(String sheetName) {
if(sheetName.startsWith("_") || sheetName.contains("staging") ||sheetName.contains("Staging")) {
return true;
}
return false;
}
}
如果圆环图的所有数据在数据中都可用(即 2.0% 而不是 0.0%),则导出工作正常。
Aspose 细胞版本:aspose-cells:17.4.0
Excel 文件可以在这里下载:https://drive.google.com/file/d/1UgFVTAOk3NcvQNdbjWBlf3zTudxjOmTj/view?usp=sharing
我们用 most recent version i.e. 17.11.3 测试了您的 Excel 文件,发现此问题的发生是由于 Aspose.Cells 中的一些错误。我们已将此问题记录在我们的数据库中以进行调查和修复。问题解决后,我们会更新您。下面是测试这个问题的示例代码和微软Excel创建的Pdf和Aspose.Cells创建的Pdf的截图,供参考。
Java
Workbook wb = new Workbook(dirPath + "Aspose_Cells_Clear_PrintArea.xlsx");
wb.save(dirPath + "output.pdf");
截图
Update-1
此问题已在 Aspose.Cells for Java 17.12 中修复。这里是固定版本生成的输出Pdf截图,供参考。
注意:我在 Aspose 担任开发人员布道师
我有一个 excel 文件,其中有两个图表(饼图 和 圆环图)。这些图表是通过引用其他工作表的单元格创建的。但是,当我将文件保存为 PDF 时,第二张图表(圆环图)未在 pdf 中呈现。
这是 Java 中 Aspose Cells 的示例代码。
import com.aspose.cells.*
class AsposeCellTesting {
public static void main(String[] args) {
generatePDF()
}
public static void generatePDF(){
Workbook workbook = new Workbook(new FileInputStream(new File("new_imp.xlsx")));
println "Number of sheets = ${workbook.getWorksheets().getCount()}"
for (int j = 0; j < workbook.getWorksheets().getCount(); j++) {
if(shouldExclude(workbook.getWorksheets().get(j).getName())){
workbook.getWorksheets().get(j).setVisible(false);
}else{
// do nothing
}
}
workbook.calculateFormula();
workbook.save("DONUT_CHART.pdf");
}
public static Boolean shouldExclude(String sheetName) {
if(sheetName.startsWith("_") || sheetName.contains("staging") ||sheetName.contains("Staging")) {
return true;
}
return false;
}
}
如果圆环图的所有数据在数据中都可用(即 2.0% 而不是 0.0%),则导出工作正常。
Aspose 细胞版本:aspose-cells:17.4.0
Excel 文件可以在这里下载:https://drive.google.com/file/d/1UgFVTAOk3NcvQNdbjWBlf3zTudxjOmTj/view?usp=sharing
我们用 most recent version i.e. 17.11.3 测试了您的 Excel 文件,发现此问题的发生是由于 Aspose.Cells 中的一些错误。我们已将此问题记录在我们的数据库中以进行调查和修复。问题解决后,我们会更新您。下面是测试这个问题的示例代码和微软Excel创建的Pdf和Aspose.Cells创建的Pdf的截图,供参考。
Java
Workbook wb = new Workbook(dirPath + "Aspose_Cells_Clear_PrintArea.xlsx");
wb.save(dirPath + "output.pdf");
截图
Update-1
此问题已在 Aspose.Cells for Java 17.12 中修复。这里是固定版本生成的输出Pdf截图,供参考。
注意:我在 Aspose 担任开发人员布道师