我有一个excel文件,其中包含两个图表(饼图和圆环图)。这些图表是通过其他工作表的单元格引用创建的。但是,当我将文件保存为PDF时,第二张图表(圆环图)不会在pdf中呈现。
以下是Aspose Cells的Java示例代码。
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 Cells版本: aspose-cells:17.4.0
可以在此处下载Excel文件:https://drive.google.com/file/d/1UgFVTAOk3NcvQNdbjWBlf3zTudxjOmTj/view?usp=sharing
答案 0 :(得分:1)
我们已使用most recent version i.e. 17.11.3测试了您的Excel文件,并发现由于Aspose.Cells中的一些错误而发生此问题。我们已将此问题记录在我们的数据库中以供调查和修复。一旦问题得到解决,我们将为您更新。以下是用于测试此问题的示例代码以及由Aspose.Cells创建的Microsoft Excel和Pdf创建的Pdf的屏幕截图,供参考。
<强>爪哇强>
Workbook wb = new Workbook(dirPath + "Aspose_Cells_Clear_PrintArea.xlsx");
wb.save(dirPath + "output.pdf");
<强>更新-1 强>
此问题已在Aspose.Cells for Java 17.12中修复。以下是使用固定版本生成的输出Pdf屏幕截图。
注意: 我在Aspose担任开发人员传播者