Convertir PDF a HTML en Java

Aspose.PDF for Java admite la exportación a HTML con opciones para imágenes, SVG, división de página, transparencia y renderizado de capas. Utilice HtmlSaveOptions para controlar cómo se escriben las páginas PDF, los recursos y el marcado en la salida HTML.

Convertir PDF a HTML

Utilice este ejemplo cuando un PDF debe exportarse a un documento HTML estándar.

  1. Abra el PDF de origen en una instancia de Document.
  2. Cree predeterminado HtmlSaveOptions para la serialización estándar de HTML.
  3. Llame document.save(outputFile.toString(), saveOptions) por lo tanto, el contenido de la página PDF se exporta como marcado HTML.
  4. Guarde la salida HTML generada.
public static void convertPdfToHtml(Path inputFile, Path outputFile) {
    try (Document document = new Document(inputFile.toString())) {
        HtmlSaveOptions saveOptions = new HtmlSaveOptions();
        document.save(outputFile.toString(), saveOptions);
    }
    System.out.println(inputFile + " converted into " + outputFile);
}

Convertir PDF a HTML y almacenar imágenes por separado

Utilice este ejemplo cuando las imágenes extraídas deban escribirse como archivos separados durante la exportación a HTML.

  1. Abra el PDF de origen en una instancia de Document.
  2. Cree HtmlSaveOptions y establezca setSpecialFolderForAllImages(...) a un directorio de salida de imágenes dedicado.
  3. Llame document.save(outputFile.toString(), saveOptions) por lo que las imágenes raster se emiten como archivos de recursos separados en lugar de salida únicamente en línea.
  4. Guarde la salida HTML junto con los activos de imagen generados.
public static void convertPdfToHtmlStoringImages(Path inputFile, Path outputFile) {
    try (Document document = new Document(inputFile.toString())) {
        HtmlSaveOptions saveOptions = new HtmlSaveOptions();
        saveOptions.setSpecialFolderForAllImages(inputFile.getParent().resolve("images").toString());
        document.save(outputFile.toString(), saveOptions);
    }
    System.out.println(inputFile + " converted into " + outputFile);
}

Convertir PDF a HTML de varias páginas

Utilice este ejemplo cuando cada página PDF deba representarse por separado en la salida HTML.

  1. Abra el PDF de origen en una instancia de Document.
  2. Cree HtmlSaveOptions y habilite setSplitIntoPages(true).
  3. Llame document.save(outputFile.toString(), saveOptions) por lo que cada página PDF se escribe como una salida HTML separada.
  4. Guarde los archivos HTML generados.
public static void convertPdfToHtmlMultiPage(Path inputFile, Path outputFile) {
    try (Document document = new Document(inputFile.toString())) {
        HtmlSaveOptions saveOptions = new HtmlSaveOptions();
        saveOptions.setSplitIntoPages(true);
        document.save(outputFile.toString(), saveOptions);
    }
    System.out.println(inputFile + " converted into " + outputFile);
}

Convertir PDF a HTML y almacenar SVG por separado

Utilice este ejemplo cuando el contenido vectorial deba emitirse como recursos SVG separados.

  1. Abra el PDF de origen en una instancia de Document.
  2. Cree HtmlSaveOptions y establezca setSpecialFolderForSvgImages(...) a un directorio externo de recursos SVG.
  3. Llame document.save(outputFile.toString(), saveOptions) por lo que los gráficos vectoriales se almacenan fuera del archivo HTML principal.
  4. Guarde la salida HTML y los recursos SVG.
public static void convertPdfToHtmlStoringSvg(Path inputFile, Path outputFile) {
    try (Document document = new Document(inputFile.toString())) {
        HtmlSaveOptions saveOptions = new HtmlSaveOptions();
        saveOptions.setSpecialFolderForSvgImages(inputFile.getParent().resolve("svg_images").toString());
        document.save(outputFile.toString(), saveOptions);
    }
    System.out.println(inputFile + " converted into " + outputFile);
}

Convertir PDF a HTML con SVG comprimido

Utilice este ejemplo cuando la salida SVG deba optimizarse durante la exportación HTML.

  1. Abra el PDF de origen en una instancia de Document.
  2. Cree HtmlSaveOptions y configure una directorio dedicada para recursos SVG.
  3. Habilite setCompressSvgGraphicsIfAny(true) por lo tanto, los recursos SVG se comprimen durante la exportación.
  4. Llame document.save(outputFile.toString(), saveOptions) y guarde los archivos HTML convertidos.
public static void convertPdfToHtmlCompressSvg(Path inputFile, Path outputFile) {
    try (Document document = new Document(inputFile.toString())) {
        HtmlSaveOptions saveOptions = new HtmlSaveOptions();
        saveOptions.setSpecialFolderForSvgImages(inputFile.getParent().resolve("svg_images").toString());
        saveOptions.setCompressSvgGraphicsIfAny(true);
        document.save(outputFile.toString(), saveOptions);
    }
    System.out.println(inputFile + " converted into " + outputFile);
}

Convertir PDF a HTML con fondos de página PNG

Utilice este ejemplo cuando los fondos de página deban renderizarse como imágenes PNG en la salida HTML.

  1. Abra el PDF de origen en una instancia de Document.
  2. Cree HtmlSaveOptions y establezca el modo de guardado de imágenes raster a fondos de página PNG.
  3. Llame document.save(outputFile.toString(), saveOptions) por lo tanto el contenido de fondo de la página se emite como capas HTML basadas en PNG.
  4. Guarde la salida HTML convertida.
public static void convertPdfToHtmlPngBackground(Path inputFile, Path outputFile) {
    try (Document document = new Document(inputFile.toString())) {
        HtmlSaveOptions saveOptions = new HtmlSaveOptions();
        saveOptions.setRasterImagesSavingMode(
                HtmlSaveOptions.RasterImagesSavingModes.AsEmbeddedPartsOfPngPageBackground);
        document.save(outputFile.toString(), saveOptions);
    }
    System.out.println(inputFile + " converted into " + outputFile);
}

Convertir PDF a contenido del cuerpo HTML únicamente

Utilice este ejemplo cuando solo se necesite el marcado del cuerpo en lugar de una envoltura completa de documento HTML.

  1. Abra el PDF de origen en una instancia de Document.
  2. Cree HtmlSaveOptions y establezca el modo de generación de marcado a WriteOnlyBodyContent.
  3. Mantenga setSplitIntoPages(true) habilitado cuando la salida solo del cuerpo aún debe estar separada por páginas.
  4. Llame document.save(outputFile.toString(), saveOptions) y guarde la salida HTML.
public static void convertPdfToHtmlBodyContent(Path inputFile, Path outputFile) {
    try (Document document = new Document(inputFile.toString())) {
        HtmlSaveOptions saveOptions = new HtmlSaveOptions();
        saveOptions.setHtmlMarkupGenerationMode(
                HtmlSaveOptions.HtmlMarkupGenerationModes.WriteOnlyBodyContent);
        saveOptions.setSplitIntoPages(true);
        document.save(outputFile.toString(), saveOptions);
    }
    System.out.println(inputFile + " converted into " + outputFile);
}

Convertir PDF a HTML con renderizado de texto transparente

Utilice este ejemplo cuando se deba conservar el texto transparente en la exportación HTML.

  1. Abra el PDF de origen en una instancia de Document.
  2. Cree HtmlSaveOptions y habilite la preservación del texto transparente y con sombra.
  3. Llame document.save(outputFile.toString(), saveOptions) por lo que la apariencia del texto relacionada con la transparencia se conserva en el resultado HTML.
  4. Guarde la salida HTML convertida.
public static void convertPdfToHtmlTransparentTextRendering(Path inputFile, Path outputFile) {
    try (Document document = new Document(inputFile.toString())) {
        HtmlSaveOptions saveOptions = new HtmlSaveOptions();
        saveOptions.setSaveTransparentTexts(true);
        saveOptions.setSaveShadowedTextsAsTransparentTexts(true);
        document.save(outputFile.toString(), saveOptions);
    }
    System.out.println(inputFile + " converted into " + outputFile);
}

Convertir PDF a HTML con renderizado de capa de documento

Utilice este ejemplo cuando la visibilidad de la capa PDF deba reflejarse en el resultado HTML.

  1. Abra el PDF de origen en una instancia de Document.
  2. Cree HtmlSaveOptions y habilite setConvertMarkedContentToLayers(true).
  3. Llame document.save(outputFile.toString(), saveOptions) Así, el contenido marcado del PDF se asigna a capas HTML.
  4. Guarde los archivos HTML exportados.
public static void convertPdfToHtmlDocumentLayersRendering(Path inputFile, Path outputFile) {
    try (Document document = new Document(inputFile.toString())) {
        HtmlSaveOptions saveOptions = new HtmlSaveOptions();
        saveOptions.setConvertMarkedContentToLayers(true);
        document.save(outputFile.toString(), saveOptions);
    }
    System.out.println(inputFile + " converted into " + outputFile);
}