Cómo convertir un PDF a un libro de Excel editable en Java

Cómo convertir un PDF a un libro de Excel editable en Java

Esta guía muestra cómo transformar un PDF en un libro que realmente puedes editar, no solo una exportación plana. Convertirás un PDF a XLSX con ExcelSaveOptions, ajustarás la exportación para que las tablas se distribuyan limpiamente en un número razonable de hojas, y convertirás un libro editado de nuevo a PDF con ExcelLoadOptions.

Convertir un PDF a un libro de Excel básico

Document.save con SaveFormat.Xlsx realiza una conversión directa: el texto y el contenido tipo tabla de cada página se coloca en su propia hoja de cálculo.

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
}

Ajusta la exportación para obtener hojas de cálculo más limpias

Una exportación de una hoja por página a menudo no es lo que un usuario de hojas de cálculo desea. ExcelSaveOptions controla la fusión de hojas, la disposición de columnas y las heurísticas de recuperación de tablas para PDFs que no tienen una estructura de tabla etiquetada:

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) es la única opción que más modifica la forma del resultado: sin ella, un informe de 20 páginas genera 20 hojas de cálculo.

Convertir un libro de Excel de nuevo a PDF

Después de que un revisor edite el libro de trabajo, recupérelo en formato PDF cargándolo con ExcelLoadOptions y guardando el documento resultante:

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

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

Ver también

 Español