Cum să convertești un PDF într-un registru de lucru Excel editabil în Java
Acest ghid arată cum să transformi un PDF într-un registru pe care îl poți edita cu adevărat, nu doar o exportare plată. Vei converti un PDF în XLSX cu ExcelSaveOptions, vei ajusta exportul astfel încât tabelele să se așeze curat pe un număr rezonabil de foi și vei converti un registru editat înapoi în PDF cu ExcelLoadOptions.
Convertește un PDF într-un registru Excel de bază
Document.save cu SaveFormat.Xlsx efectuează o conversie simplă: textul și conținutul tabelar al fiecărei pagini sunt plasate pe propria foaie.
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
}Ajustează exportul pentru foi de calcul mai curate
Un export cu o foaie pe pagină nu este adesea ceea ce dorește un utilizator de foi de calcul. ExcelSaveOptions controlează îmbinarea foilor, aranjamentul coloanelor și euristicile de recuperare a tabelelor pentru PDF-uri care nu au structură de tabel etichetată:
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) este singura opțiune care modifică cel mai mult forma ieșirii: fără ea, un raport de 20 de pagini produce 20 de foi.
Convertiți un registru de lucru Excel înapoi în PDF
După ce un recenzent editează registrul de lucru, readuceți-l în format PDF încărcându-l cu ExcelLoadOptions și salvând documentul rezultat:
import org.aspose.pdf.Document;
import org.aspose.pdf.ExcelLoadOptions;
try (Document doc = new Document("book.xlsx", new ExcelLoadOptions())) {
doc.save("book.pdf");
}