Aspose.PDF for Java API允许您将PDF文件呈现为Excel XLS和XLSX文件格式
Aspose.PDF for Java提供了ExcelSaveOptions类来将PDF转化为XLS格式。将ExcelSaveOptions对象传递给Dodument.save()方法的第二个参数即可。
具体代码如下:
package com.aspose.pdf.examples;
import java.io.IOException;
import java.nio.file.Path;
import java.nio.file.Paths;
import com.aspose.pdf.*;
public final class ConvertPDFtoXLSX {
private ConvertPDFtoXLSX() {
}
// The path to the documents directory.
private static Path _dataDir = Paths.get("/home/admin1/pdf-examples/Samples");
public static void main(String[] args) throws IOException {
ConvertPDFtoExcelSimple();
ConvertPDFtoExcelAdvanced_InsertBlankColumnAtFirst();
ConvertPDFtoExcelAdvanced_MinimizeTheNumberOfWorksheets();
ConvertPDFtoExcelAdvanced_SaveXLSX();
}
public static void ConvertPDFtoExcelSimple() {
// Load PDF document
Document pdfDocument = new Document(_dataDir + "input.pdf");
// Instantiate ExcelSave Option object
ExcelSaveOptions excelsave = new ExcelSaveOptions();
// Save the output in XLS format
pdfDocument.save("PDFToXLS_out.xls", excelsave);
}
}
将PDF转化为XLS格式时,会输出第一列为空白列。ExcelSaveOptions类中的InsertBlankColumnAtFirst选项用于控制该列,默认值是true。
具体代码参考如下:
public static void ConvertPDFtoExcelAdvanced_InsertBlankColumnAtFirst() {
// Load PDF document
Document pdfDocument = new Document(_dataDir + "input.pdf");
// Instantiate ExcelSave Option object
ExcelSaveOptions excelsave = new ExcelSaveOptions();
excelsave.setInsertBlankColumnAtFirst(false);
// Save the output in XLS format
pdfDocument.save("PDFToXLS_out.xls", excelsave);
}
将PDF转化为XLS时,PDF的每一页会被转化成Excel不同的WorkSheet。原因是MinimizeTheNumberOfWorksheets属性设置的默认值是false。如果转化时要转化为单个WorkSheet,需要设置
MinimizeTheNumberOfWorksheets为true。
具体代码参考如下:
public static void ConvertPDFtoExcelAdvanced_MinimizeTheNumberOfWorksheets() {
// Load PDF document
Document pdfDocument = new Document(_dataDir + "input.pdf");
// Instantiate ExcelSave Option object
ExcelSaveOptions excelsave = new ExcelSaveOptions();
excelsave.setMinimizeTheNumberOfWorksheets(true);
// Save the output in XLS format
pdfDocument.save("PDFToXLS_out.xls", excelsave);
}
Aspose.PDF默认使用的Excel 2003格式存储数据。如果需要将PDF转化为XLSX格式,Aspose.PDF有一个ExcelSaveOptions的类。需要做XLSX格式的设置。
具体代码参考如下:
public static void ConvertPDFtoExcelAdvanced_SaveXLSX() {
// Load PDF document
Document pdfDocument = new Document(_dataDir + "input.pdf");
// Instantiate ExcelSave Option object
ExcelSaveOptions excelSave = new ExcelSaveOptions();
excelSave.setFormat(ExcelSaveOptions.ExcelFormat.XLSX);
// Save the output in XLS format
pdfDocument.save("PDFToXLS_out.xlsx", excelSave);
}