HTML-Dokument in Java speichern
Das Paket aspose.html.Saving wird von Datenklassen für eine Beschreibung spezifischer Speicheroptionen beim Konvertierungs- und Speicherprozess präsentiert. Nachdem Sie mit einer HTML-Datei gearbeitet oder ein HTML-Dokument von Grund auf neu erstellt haben, können Sie Änderungen mit einer der Methoden HTMLDocument.save() speichern. Die Java-Bibliothek stellt die Klassen [SaveOptions]https://reference.aspose.com/html/java/com.aspose.html.saving/saveoptions/ und ResourceHandlingOptions zur Verfügung, mit denen Sie Optionen für Speichervorgänge festlegen können.
Die Aspose.HTML for Java-Bibliothek hat zwei unterschiedliche Konzepte für die Erstellung der Ausgabedateien:
- Das erste Konzept basiert auf der Erstellung von HTML-ähnlichen Dateien als Ausgabe - HTML, MHTML, Markdown und SVG-Dateien. Die SaveOptions ist eine Basisklasse für diesen Ansatz, die den Speichervorgang der zugehörigen Ressourcen wie Skripte, Stile, Bilder usw. unterstützt.
- Das zweite Konzept könnte verwendet werden, um HTML als Ergebnis visuell darzustellen. Die Basisklasse für dieses Konzept ist RenderingOptions; sie verfügt über spezielle Methoden zur Angabe der Seitengröße, der Seitenränder, der Auflösung, der Benutzerstile usw.
Dieser Artikel beschreibt nur, wie man die Klasse SaveOptions und die Methoden save() zum Speichern von HTML-Dokumenten verwendet. Um mehr über den Rendering-Mechanismus zu erfahren, lesen Sie bitte den Artikel
Feinabstimmungskonverter.
HTML speichern
Wenn Sie Ihre Änderungen in HTML abgeschlossen haben, sollten Sie das Dokument mit einer der Methoden HTMLDocument.save() speichern. Das folgende Beispiel ist der einfachste Weg, eine HTML-Datei zu speichern:
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");Das obige Beispiel ist recht einfach. In realen Anwendungen benötigen Sie jedoch oft zusätzliche Kontrolle über den Speichervorgang. In den nächsten Abschnitten wird beschrieben, wie Sie die Optionen zur Ressourcenbehandlung nutzen oder Ihr Dokument in den verschiedenen Formaten speichern können.
HTML in Datei speichern
Der folgende Codeschnipsel zeigt, wie man ResourceHandlingOptions verwendet, um verknüpfte Dokumente zu verwalten. Wir erstellen eine einfache HTML-Datei von Grund auf mit einem verknüpften Dokument namens “linked.html” im Beispiel.
Um die Speicheroptionen anzuwenden, verwenden wir den Konstruktor HTMLSaveOptions(), um eine Instanz der Klasse
HTMLSaveOptions zu erzeugen. Dann setzen wir mit der Methode getResourceHandlingOptions() die maximale Behandlungstiefe für verknüpfte Ressourcen in den Speicheroptionen auf 1. Das bedeutet, dass das Speichern des HTML-Dokuments das Hauptdokument und alle direkt verknüpften Ressourcen bis zu einer Tiefe von 1 umfasst. Und schließlich rufen wir die Methode save(path, options) des Dokumentobjekts zusammen mit den angegebenen Speicheroptionen auf.
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);HTML in MHTML speichern
In manchen Fällen müssen Sie Ihr HTML-Dokument als eine einzige MHTML-Datei speichern. das Dokument MHTML kann für diesen Zweck sehr nützlich sein, da es ein Webseitenarchiv ist und alles in sich selbst speichert. Das HTMLSaveFormat gibt das Format an, in dem das Dokument gespeichert wird, es können die Formate HTML, MHTML und MD sein. Das folgende Beispiel zeigt, wie die Methode save(path, saveFormat) zum Speichern von HTML in MHTML verwendet wird.
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);Wie beim Beispiel HTML to File können Sie auch MHTMLSaveOptions verwenden und die gewünschten Bearbeitungsoptionen anpassen.
HTML in Markdown speichern
Markdown ist eine Auszeichnungssprache mit Klartext-Syntax. Um Markdown-Dateien mit Aspose.HTML zu erstellen, sehen Sie sich bitte das folgende Beispiel an:
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 bietet neben der Funktion zum Speichern von HTML zu Markdown auch einen HTML zu Markdown Konverter. Weitere Informationen zur Verwendung des Markdown-Konverters finden Sie im Artikel HTML to Markdown.
SVG speichern
Normalerweise sehen Sie das SVG-Dokument als Teil einer HTML-Datei; es stellt die Vektordaten auf der Seite dar: Bilder, Icons, Tabellen usw. SVG kann jedoch auch aus der Webseite extrahiert werden, und Sie können es ähnlich wie das HTML-Dokument bearbeiten. Da
SVGDocument und
HTMLDocument auf demselben
WHATWG DOM Standard basieren, sind alle Vorgänge wie Laden, Lesen, Bearbeiten, Konvertieren und Speichern für beide Dokumente ähnlich. Daher sind alle Beispiele, in denen Sie Manipulationen mit HTMLDocument sehen können, auch auf SVGDocument anwendbar.
Um Ihre Änderungen in SVG zu speichern, gehen Sie bitte wie folgt vor:
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");Fazit
Das Paket aspose.html.Saving ermöglicht Entwicklern, den Speichervorgang von HTML- und SVG-Dokumenten mithilfe erweiterter Optionen wie
SaveOptionsundResourceHandlingOptionsanzupassen und zu optimieren. Mit diesen Klassen können Sie verknüpfte Ressourcen effizient verwalten, bestimmte Ausgabeformate auswählen und den Speichervorgang an die Anforderungen Ihrer Anwendung anpassen.Aspose.HTML for Java ermöglicht das Speichern von HTML-Dokumenten in verschiedenen Formaten, darunter HTML, MHTML und Markdown, und bietet präzise Kontrolle und Einfachheit.
Die Beispiele in diesem Artikel veranschaulichen die Einfachheit und Leistungsfähigkeit von Speichervorgängen. Weitere Informationen zu Rendering-Optionen und anderen erweiterten Funktionen finden Sie im Artikel Feinabstimmungskonverter.
Die vollständigen Beispiele und Datendateien können Sie unter GitHub herunterladen.