当前位置: 首页 > 工具软件 > Aspose.Pdf > 使用案例 >

Aspose.PDF for Java系列6-转化PDF文档为Excel

后星河
2023-12-01

Aspose.PDF for Java系列6-转化PDF文档为Excel

Aspose.PDF for Java API允许您将PDF文件呈现为Excel XLS和XLSX文件格式

转化为Excel XLS

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);
    }
}

转化为Excel XLS(控制列)

将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到单个Excel WorkSheet

将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);
    }

转化为Excel XLSX

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);
    }
 类似资料: