Enregistrer un document HTML en Java
Le paquetage aspose.html.Saving est présenté par les classes de données pour une description des options d’enregistrement spécifiques lors du processus de conversion et d’enregistrement. Après avoir travaillé avec un fichier HTML ou créé un document HTML à partir de zéro, vous pouvez enregistrer les modifications à l’aide de l’une des méthodes HTMLDocument.save(). La bibliothèque Java fournit les classes [SaveOptions]https://reference.aspose.com/html/java/com.aspose.html.saving/saveoptions/ et ResourceHandlingOptions qui vous permettent de définir des options pour les opérations d’enregistrement.
La bibliothèque Aspose.HTML for Java propose deux concepts différents pour la création des fichiers de sortie :
- La première conception est basée sur la création de fichiers de type HTML en sortie – fichiers HTML, MHTML, Markdown et SVG. La classe SaveOptions est une classe de base pour cette approche qui permet de gérer le processus d’enregistrement des ressources connexes telles que les scripts, les styles, les images, etc.
- Le second concept pourrait être utilisé pour représenter visuellement le HTML en tant que résultat. La classe de base de cette conception est RenderingOptions ; elle possède des méthodes spécialisées pour spécifier la taille de la page, les marges de la page, la résolution, les styles de l’utilisateur, etc.
Cet article décrit uniquement comment utiliser la classe SaveOptions
et les méthodes save()
pour sauvegarder les documents HTML. Pour en savoir plus sur le mécanisme de rendu, veuillez consulter l’article
Convertisseurs à réglage fin.
Enregistrer HTML
Une fois que vous avez terminé vos modifications en HTML, vous pouvez enregistrer le document en utilisant l’une des méthodes HTMLDocument.save(). L’exemple suivant est la manière la plus simple d’enregistrer un fichier HTML :
1// Save HTML to a file using Java
2
3// Initialize an empty HTML document
4HTMLDocument document = new HTMLDocument();
5
6// Create a text node and add it to the document
7Text text = document.createTextNode("Hello, World!");
8document.getBody().appendChild(text);
9
10// Save the HTML document to a file
11document.save("save-to-file.html");
L’exemple ci-dessus est assez simple. Cependant, dans les applications réelles, vous avez souvent besoin d’un contrôle supplémentaire sur le processus d’enregistrement. Les sections suivantes décrivent comment utiliser les options de gestion des ressources ou enregistrer votre document dans les différents formats.
Enregistrer HTML dans un fichier
L’extrait de code suivant montre comment utiliser les ResourceHandlingOptions pour gérer les documents liés. Nous créons un simple fichier HTML à partir de zéro avec un document lié nommé “linked.html” dans l’exemple.
Pour appliquer les options de sauvegarde, nous utilisons le constructeur HTMLSaveOptions() pour créer une instance de la classe
HTMLSaveOptions. Ensuite, en utilisant la méthode getResourceHandlingOptions()
, nous fixons la profondeur maximale de gestion des ressources liées dans les options de sauvegarde à 1. Cela signifie que la sauvegarde du document HTML inclura le document principal et toutes les ressources directement liées jusqu’à une profondeur de 1. Enfin, nous appelons la méthode save(path, options)
de l’objet document, ainsi que les options de sauvegarde spécifiées.
1// Save HTML with a linked resources using Java
2
3// Prepare a simple HTML file with a linked document
4java.nio.file.Files.write(
5 java.nio.file.Paths.get("save-with-linked-file.html"),
6 "<p>Hello, World!</p><a href='linked.html'>linked file</a>".getBytes());
7
8// Prepare a simple linked HTML file
9java.nio.file.Files.write(java.nio.file.Paths.get("linked.html"),
10 "<p>Hello, linked file!</p>".getBytes());
11
12// Load the "save-with-linked-file.html" into memory
13HTMLDocument document = new HTMLDocument("save-with-linked-file.html");
14
15// Create an instance of the HTMLSaveOptions class
16HTMLSaveOptions options = new HTMLSaveOptions();
17
18// The following line with the value "0" cuts off all other linked HTML-files while saving this instance
19// If you remove this line or change the value to "1", the "linked.html" file will be saved as well to the output folder
20options.getResourceHandlingOptions().setMaxHandlingDepth(1);
21
22// Save the document with the save options
23document.save("save-with-linked-file_out.html", options);
Enregistrer HTML en MHTML
Dans certains cas, vous devez enregistrer votre document HTML sous la forme d’un fichier MHTML unique. le document MHTML peut être très utile à cette fin, car il s’agit d’une archive de page web qui stocke tout à l’intérieur d’elle-même. Le HTMLSaveFormat spécifie le format dans lequel le document est enregistré, il peut s’agir des formats HTML, MHTML et MD. L’exemple ci-dessous montre comment utiliser la méthode save(path, saveFormat) pour l’enregistrement HTML vers MHTML.
1// Save HTML as MHTML using Java
2
3// Prepare a simple HTML file with a linked document
4java.nio.file.Files.write(
5 java.nio.file.Paths.get("document.html"),
6 "<p>Hello, World!</p><a href='linked-file.html'>linked file</a>".getBytes());
7
8// Prepare a simple linked HTML file
9java.nio.file.Files.write(
10 java.nio.file.Paths.get("linked-file.html"),
11 "<p>Hello, linked file!</p>".getBytes());
12
13// Load the "document.html" into memory
14HTMLDocument document = new HTMLDocument("document.html");
15
16// Save the document to MHTML format
17document.save("save-to-MTHML.mht", HTMLSaveFormat.MHTML);
Comme dans l’exemple HTML to File, vous pouvez utiliser MHTMLSaveOptions et personnaliser les options de traitement requises.
Enregistrer HTML en Markdown
Markdown est un langage de balisage avec une syntaxe de texte simple. Pour créer des fichiers Markdown à l’aide d’Aspose.HTML, veuillez consulter l’exemple suivant :
1// Save HTML as a Markdown file using Java
2
3// Prepare HTML code
4String html_code = "<H2>Hello, World!</H2>";
5
6// Initialize a document from a string variable
7HTMLDocument document = new HTMLDocument(html_code, ".");
8
9// Save the document as a Markdown file
10document.save("save-to-MD.md", HTMLSaveFormat.Markdown);
Aspose.HTML for Java, en plus de la fonction d’enregistrement HTML vers Markdown, offre également un convertisseur HTML vers Markdown. Pour plus d’informations sur l’utilisation du convertisseur Markdown, veuillez consulter l’article HTML vers Markdown.
Enregistrer SVG
Habituellement, le document SVG fait partie d’un fichier HTML ; il représente les données vectorielles de la page : images, icônes, tableaux, etc. Cependant, le SVG peut également être extrait de la page web, et vous pouvez le manipuler de la même manière que le document HTML. Étant donné que
SVGDocument et
HTMLDocument sont basés sur la même norme
WHATWG DOM, toutes les opérations, telles que le chargement, la lecture, l’édition, la conversion et l’enregistrement, sont similaires pour les deux documents. Ainsi, tous les exemples de manipulation de HTMLDocument
s’appliquent également à SVGDocument
.
Pour enregistrer vos modifications en SVG, veuillez utiliser la méthode suivante :
1// Save HTML as SVG using Java
2
3// Prepare SVG code
4String code = "<svg xmlns='http://www.w3.org/2000/svg' height='200' width='300'>" +
5 "<g fill='none' stroke-width= '10' stroke-dasharray='30 10'>" +
6 "<path stroke='red' d='M 25 40 l 215 0' />" +
7 "<path stroke='black' d='M 35 80 l 215 0' />" +
8 "<path stroke='blue' d='M 45 120 l 215 0' />" +
9 "</g>" +
10 "</svg>";
11
12// Initialize an SVG instance from the content string
13SVGDocument document = new SVGDocument(code, ".");
14
15// Save the SVG file to disk
16document.save("save-to-SVG.svg");
Conclusion
Le package aspose.html.Saving permet aux développeurs de personnaliser et d’optimiser le processus d’enregistrement des documents HTML et SVG en utilisant des options avancées telles que
SaveOptions
etResourceHandlingOptions
. En utilisant ces classes, vous pouvez gérer efficacement les ressources liées, sélectionner des formats de sortie spécifiques et personnaliser le processus d’enregistrement pour répondre aux besoins de votre application.Aspose.HTML for Java vous permet d’enregistrer des documents HTML dans différents formats, notamment HTML, MHTML et Markdown, en offrant un contrôle précis et une grande simplicité.
Les exemples présentés dans cet article illustrent la simplicité et la puissance des opérations d’enregistrement. Consultez l’article Réglage fin des convertisseurs pour explorer davantage les options de rendu et d’autres fonctions avancées.
Vous pouvez télécharger les exemples complets et les fichiers de données à partir de GitHub.