Jak przekonwertować PDF na edytowalny skoroszyt Excel w Java

Jak przekonwertować PDF na edytowalny skoroszyt Excel w Java

Ten przewodnik pokazuje, jak przekształcić PDF w skoroszyt, który naprawdę możesz edytować, a nie tylko płaską eksportację. Przekonwertujesz PDF do XLSX za pomocą ExcelSaveOptions, dostosujesz eksport, aby tabele trafiały czysto na rozsądną liczbę arkuszy, oraz przekształcisz edytowany skoroszyt z powrotem do PDF przy użyciu ExcelLoadOptions.

Konwertuj PDF do podstawowego skoroszytu Excel

Document.save z SaveFormat.Xlsx wykonuje prostą konwersję: tekst i treść przypominająca tabele z każdej strony są umieszczane w osobnym arkuszu.

import org.aspose.pdf.Document;
import org.aspose.pdf.SaveFormat;

try (Document doc = new Document("report.pdf")) {
    doc.save("report.xlsx", SaveFormat.Xlsx); // SaveFormat.Excel is an alias
}

Dostosuj eksport, aby uzyskać czystsze arkusze kalkulacyjne

Eksport jednego arkusza na stronę często nie jest tym, czego oczekuje użytkownik arkuszy kalkulacyjnych. ExcelSaveOptions kontroluje łączenie arkuszy, układ kolumn oraz heurystyki odzyskiwania tabel dla PDF-ów, które nie mają oznaczonej struktury tabeli:

import org.aspose.pdf.Document;
import org.aspose.pdf.ExcelSaveOptions;

try (Document doc = new Document("report.pdf")) {
    ExcelSaveOptions options = new ExcelSaveOptions();
    options.setFormat(ExcelSaveOptions.ExcelFormat.XLSX); // default
    options.setMinimizeTheNumberOfWorksheets(true);        // merge pages onto fewer sheets
    options.setInsertBlankColumnAtFirst(false);            // no leading spacer column
    options.setUniformWorksheets(false);                   // allow per-sheet column widths
    options.setStructuralHeuristics(true);                 // recover tables on untagged PDFs
    options.setSuppressRunningHeadersFooters(true);         // drop repeated page furniture
    doc.save("report.xlsx", options);
}

setMinimizeTheNumberOfWorksheets(true) jest jedyną opcją, która najbardziej zmienia kształt wyjścia: bez niej 20-stronicowy raport generuje 20 arkuszy.

Konwertuj skoroszyt Excel z powrotem na PDF

Po tym, jak recenzent edytuje skoroszyt, przywróć go do formatu PDF, ładując go za pomocą ExcelLoadOptions i zapisując powstały dokument:

import org.aspose.pdf.Document;
import org.aspose.pdf.ExcelLoadOptions;

try (Document doc = new Document("book.xlsx", new ExcelLoadOptions())) {
    doc.save("book.pdf");
}

Zobacz także

 Polski