Rendering Devices – Rendering von HTML in PDF, XPS, DOCX und Bilder
In diesem Artikel wird beschrieben, wie Rendering-Geräte – PdfDevice, XpsDevice, DocDevice und ImageDevice – verwendet werden, um HTML in PDF, XPS, DOCX und Bilder zu rendern. In den Python-Beispielen wird der Rendering-Prozess mit Standard-Rendering-Optionen betrachtet. Um mehr über die Anpassung der Ausgabe zu erfahren, lesen Sie bitte den Artikel Rendering Options.
Verständnis von Rendering Devices in Aspose.HTML
In Aspose.HTML for Python via .NET stellt ein Rendering Device eine 2D-Zeichenfläche dar, die über die Schnittstelle IDevice implementiert wird. Sein Hauptzweck besteht darin, den Inhalt von HTML und unterstützten Webformaten (MHTML, SVG und EPUB) in verschiedene Ausgabeformate zu konvertieren.
Die Python-API bietet die folgenden Rendering-Geräte:
- PdfDevice – rendert HTML, MHTML, SVG und EPUB in PDF.
- XpsDevice – rendert HTML, MHTML, SVG und EPUB in XPS.
- DocDevice – rendert HTML, MHTML, SVG und EPUB in DOCX.
- ImageDevice – rendert HTML, MHTML, SVG und EPUB in Bildformate.
Jedes Gerät hat spezifische Rendering-Optionen: PdfRenderingOptions, XpsRenderingOptions, DocRenderingOptions, und ImageRenderingOptions. Diese ermöglichen eine genaue Kontrolle über die Ausgabequalität, das Layout und die Formatierung.
PdfDevice
Der Aspose.Html.Rendering.Pdf Namespace in der Aspose.HTML for Python via .NET Bibliothek bietet Funktionen für das direkte Rendern von HTML und verwandten Formaten in PDF-Dokumente. Er enthält Klassen und Parameter, die auf die PDF-Ausgabe zugeschnitten sind. Schlüsselkomponenten:
PdfDevice
ist die Basisklasse für Rendering-Geräte. Sie wird verwendet, um HTML (oder MHTML, SVG, EPUB, etc.) in eine PDF-Datei zu konvertieren.PdfRenderingOptions
ist eine Klasse, die anpassbare Einstellungen für die PDF-Ausgabe definiert, wie Seitengröße, Ränder, Bildkomprimierung, Metadaten, Verschlüsselung und andere Layout-/Formatierungsoptionen.
Das nächste Python-Beispiel zeigt, wie man PdfDevice
verwendet, um HTML in PDF zu rendern. Der Prozess wird mit Standard-Rendering-Optionen betrachtet:
1import os
2import aspose.html as ah
3import aspose.html.rendering.pdf as rp
4
5# Prepare output directory and path for the PDF file
6output_dir = "output/"
7os.makedirs(output_dir, exist_ok=True)
8save_path = os.path.join(output_dir, "document.pdf")
9
10# Prepare HTML code
11code = "<span>Hello, World!!</span>"
12
13# Initialize an HTML document from the HTML code
14doc = ah.HTMLDocument(code, ".")
15
16# Create a PDF Device and specify the output file to render
17device = rp.PdfDevice(save_path)
18
19# Render HTML to PDF
20doc.render_to(device)
Rendering-Optionen geben Ihnen zusätzliche Kontrolle über den Rendering-Prozess. Um mehr über sie zu erfahren, lesen Sie bitte den Artikel Rendering-Optionen.
ImageDevice
Der
Aspose.Html.Rendering.Image Namespace bietet eine spezielle
ImageDevice Klasse sowie die Klasse ImageRenderingOptions
, die für das Rendern von HTML-Dateien in Rasterformate zuständig ist: JPG, PNG, BMP, GIF und TIFF.
Dieses Beispiel zeigt, wie eine HTML-Datei mit Aspose.HTML for Python via .NET in ein JPEG-Bild umgewandelt werden kann. Der Code lädt ein HTML-Dokument von der Festplatte, konfiguriert die ImageRenderingOptions
für das JPEG-Format und verwendet dann das ImageDevice
, um das Dokument in eine Ausgabebilddatei zu rendern.
1import os
2import aspose.html as ah
3import aspose.html.rendering.image as ri
4
5# Setup input and output directories
6data_dir = "data/"
7output_dir = "output/"
8os.makedirs(output_dir, exist_ok=True)
9
10# Prepare paths for input HTML and output JPG file
11document_path = os.path.join(data_dir, "drawing.html")
12save_path = os.path.join(output_dir, "drawing-output.jpg")
13
14# Initialize an HTML document from the file
15doc = ah.HTMLDocument(document_path)
16
17# Create rendering options for image format (JPEG in this case)
18image_options = ri.ImageRenderingOptions(ri.ImageFormat.JPEG)
19
20# Create an ImageDevice and specify options and output file
21device = ri.ImageDevice(image_options, save_path)
22
23# Render HTML to JPG
24doc.render_to(device)
XpsDevice
Der Namensraum Aspose.Html.Rendering.Xps stellt die Klasse XpsDevice zur Verfügung, die zum Rendern von HTML-Inhalten (oder MHTML, SVG, EPUB usw.) in XPS-Dokumente verwendet wird. Das folgende Python-Beispiel demonstriert diesen Prozess mit den Standard-Rendering-Optionen:
1import os
2import aspose.html as ah
3import aspose.html.rendering.xps as rx
4
5# Setup input and output directories
6data_dir = "data/"
7output_dir = "output/"
8os.makedirs(output_dir, exist_ok=True)
9
10# Prepare paths for input HTML and output XPS file
11document_path = os.path.join(data_dir, "drawing.html")
12save_path = os.path.join(output_dir, "drawing-output.xps")
13
14# Initialize an HTML document from the file
15doc = ah.HTMLDocument(document_path)
16
17# Create rendering options for XPS format
18xps_options = rx.XpsRenderingOptions()
19
20# Create an XpsDevice and specify options and output file
21device = rx.XpsDevice(xps_options, save_path)
22
23# Render HTML to JPG
24doc.render_to(device)
DocDevice
Der Namensraum Aspose.Html.Rendering.Doc enthält die Klasse DocDevice, die das Rendern von HTML-, MHTML-, SVG- und EPUB-Dateien ins DOCX-Format ermöglicht. Das folgende Python-Beispiel demonstriert diesen Vorgang unter Verwendung der Standard-Rendering-Optionen:
1import os
2import aspose.html as ah
3import aspose.html.rendering.doc as rd
4
5# Prepare output directory and path for the DOCX file
6output_dir = "output/"
7os.makedirs(output_dir, exist_ok=True)
8save_path = os.path.join(output_dir, "document.doc")
9
10# Initialize an HTML document from URL
11doc = ah.HTMLDocument("https://docs.aspose.com/html/files/document.html")
12
13# Create a DocDevice and specify the output file to render
14device = rd.DocDevice(save_path)
15
16# Render HTML to DOCX
17doc.render_to(device)
Aspose.HTML bietet kostenlose Online- Konverter, die HTML-, XHTML-, MHTML-, EPUB-, XML- und Markdown-Dateien in eine Reihe von gängigen Formaten konvertieren können. Sie können Ihre HTML-basierten Dokumente ganz einfach in PDF, XPS, DOCX, JPG, PNG, GIF, TIFF und andere konvertieren. Wählen Sie einfach eine Datei aus, wählen Sie das zu konvertierende Format, und schon sind Sie fertig.