Convertir un PDF en HTML en Java
Aspose.PDF for Java prend en charge l’exportation HTML avec des options pour les images, SVG, le fractionnement de page, la transparence et le rendu des calques. Utilisez HtmlSaveOptions pour contrôler la façon dont les pages PDF, les ressources et le balisage sont écrits dans la sortie HTML.
Convertir un PDF en HTML
Utilisez cet exemple lorsqu’un PDF doit être exporté vers un document HTML standard.
-
Ouvrez le PDF source dans une instance
Document. -
Créez une instance de
HtmlSaveOptionsavec les paramètres par défaut pour la sérialisation HTML. -
Appelez
document.save(outputFile.toString(), saveOptions)pour que le contenu de la page PDF soit exporté sous forme de balisage HTML. -
Enregistrez la sortie HTML générée.
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 un PDF en HTML et stocker les images séparément
Utilisez cet exemple lorsque les images extraites doivent être écrites sous forme de fichiers séparés lors de l’exportation HTML.
-
Ouvrez le PDF source dans une instance
Document. -
Créez
HtmlSaveOptionset définissezsetSpecialFolderForAllImages(...)sur un répertoire de sortie d’image dédié. -
Appelez
document.save(outputFile.toString(), saveOptions)pour que les images matricielles soient émises sous forme de fichiers de ressources distincts au lieu d’une sortie en ligne uniquement. -
Enregistrez la sortie HTML avec les ressources d’image générées.
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 un PDF en HTML multipage
Utilisez cet exemple lorsque chaque page PDF doit être représentée séparément dans la sortie HTML.
-
Ouvrez le PDF source dans une instance
Document. -
Créez
HtmlSaveOptionset activezsetSplitIntoPages(true). -
Appelez
document.save(outputFile.toString(), saveOptions)pour que chaque page PDF soit écrite sous forme de sortie HTML distincte. -
Enregistrez les fichiers HTML générés.
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 un PDF en HTML et stocker le SVG séparément
Utilisez cet exemple lorsque le contenu vectoriel doit être émis en tant que ressources SVG distinctes.
-
Ouvrez le PDF source dans une instance
Document. -
Créez
HtmlSaveOptionset définissezsetSpecialFolderForSvgImages(...)sur un répertoire de ressources SVG externe. -
Appelez
document.save(outputFile.toString(), saveOptions)pour que les graphiques vectoriels soient stockés en dehors du fichier HTML principal. -
Enregistrez la sortie HTML et les ressources 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 un PDF en HTML avec du SVG compressé
Utilisez cet exemple lorsque la sortie SVG doit être optimisée lors de l’exportation HTML.
-
Ouvrez le PDF source dans une instance
Document. -
Créez
HtmlSaveOptionset configurez un dossier dédié aux ressources SVG. -
Activez
setCompressSvgGraphicsIfAny(true)pour que les ressources SVG soient compressées lors de l’exportation. -
Appelez
document.save(outputFile.toString(), saveOptions)et enregistrez les fichiers HTML convertis.
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 un PDF en HTML avec des arrière-plans de page PNG
Utilisez cet exemple lorsque les arrière-plans de page doivent être rendus sous forme d’images PNG dans la sortie HTML.
-
Ouvrez le PDF source dans une instance
Document. -
Créez
HtmlSaveOptionset définissez le mode d’enregistrement des images matricielles sur les arrière-plans de page PNG. -
Appelez
document.save(outputFile.toString(), saveOptions)pour que le contenu de l’arrière-plan de la page soit émis sous forme de calques HTML utilisant des images PNG. -
Enregistrez la sortie HTML convertie.
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 un PDF en générant uniquement le corps HTML
Utilisez cet exemple lorsque seul le balisage du corps est nécessaire au lieu de la structure complète d’un document HTML.
-
Ouvrez le PDF source dans une instance
Document. -
Créez
HtmlSaveOptionset définissez le mode de génération de balisage surWriteOnlyBodyContent. -
Gardez
setSplitIntoPages(true)activé lorsque la sortie du corps uniquement doit toujours être séparée par des pages. -
Appelez
document.save(outputFile.toString(), saveOptions)et enregistrez la sortie 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 un PDF en HTML avec un rendu de texte transparent
Utilisez cet exemple lorsque le texte transparent doit être conservé dans l’exportation HTML.
-
Ouvrez le PDF source dans une instance
Document. -
Créez
HtmlSaveOptionset activez la préservation du texte transparent et ombré. -
Appelez
document.save(outputFile.toString(), saveOptions)pour que l’apparence du texte liée à la transparence soit conservée dans le résultat HTML. -
Enregistrez la sortie HTML convertie.
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 un PDF en HTML avec le rendu des calques du document
Utilisez cet exemple lorsque la visibilité du calque PDF doit être reflétée dans le résultat HTML.
-
Ouvrez le PDF source dans une instance
Document. -
Créez
HtmlSaveOptionset activezsetConvertMarkedContentToLayers(true). -
Appelez
document.save(outputFile.toString(), saveOptions)pour que le contenu PDF marqué soit mappé dans des calques HTML. -
Enregistrez les fichiers HTML exportés.
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);
}