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:

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:

Das nächste Python-Beispiel zeigt, wie man PdfDevice verwendet, um HTML in PDF zu rendern. Der Prozess wird mit Standard-Rendering-Optionen betrachtet:

 1# Render HTML to Pdf using Python
 2
 3import os
 4import aspose.html as ah
 5import aspose.html.rendering.pdf as rp
 6
 7# Prepare output directory and path for the PDF file
 8output_dir = "output/"
 9os.makedirs(output_dir, exist_ok=True)
10save_path = os.path.join(output_dir, "document.pdf")
11
12# Prepare HTML code
13code = "<span>Hello, World!!</span>"
14
15# Initialize an HTML document from the HTML code
16doc = ah.HTMLDocument(code, ".")
17
18# Create a PDF Device and specify the output file to render
19device = rp.PdfDevice(save_path)
20
21# Render HTML to PDF
22doc.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.

 1# Render HTML to JPG using Python
 2
 3import os
 4import aspose.html as ah
 5import aspose.html.rendering.image as ri
 6
 7# Setup input and output directories
 8data_dir = "data/"
 9output_dir = "output/"
10os.makedirs(output_dir, exist_ok=True)
11
12# Prepare paths for input HTML and output JPG file
13document_path = os.path.join(data_dir, "drawing.html")
14save_path = os.path.join(output_dir, "drawing-output.jpg")
15
16# Initialize an HTML document from the file
17doc = ah.HTMLDocument(document_path)
18
19# Create rendering options for image format (JPEG in this case)
20image_options = ri.ImageRenderingOptions(ri.ImageFormat.JPEG)
21
22# Create an ImageDevice and specify options and output file
23device = ri.ImageDevice(image_options, save_path)
24
25# Render HTML to JPG
26doc.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:

 1# Render HTML to XPS using Python
 2
 3import os
 4import aspose.html as ah
 5import aspose.html.rendering.xps as rx
 6
 7# Setup input and output directories
 8data_dir = "data/"
 9output_dir = "output/"
10os.makedirs(output_dir, exist_ok=True)
11
12# Prepare paths for input HTML and output XPS file
13document_path = os.path.join(data_dir, "drawing.html")
14save_path = os.path.join(output_dir, "drawing-output.xps")
15
16# Initialize an HTML document from the file
17doc = ah.HTMLDocument(document_path)
18
19# Create rendering options for XPS format
20xps_options = rx.XpsRenderingOptions()
21
22# Create an XpsDevice and specify options and output file
23device = rx.XpsDevice(xps_options, save_path)
24
25# Render HTML to XPS
26doc.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:

 1# Render HTML to DOCX using Python
 2
 3import os
 4import aspose.html as ah
 5import aspose.html.rendering.doc as rd
 6
 7# Prepare output directory and path for the DOCX file
 8output_dir = "output/"
 9os.makedirs(output_dir, exist_ok=True)
10save_path = os.path.join(output_dir, "document.doc")
11
12# Initialize an HTML document from URL
13doc = ah.HTMLDocument("https://docs.aspose.com/html/files/document.html")
14
15# Create a DocDevice and specify the output file to render
16device = rd.DocDevice(save_path)
17
18# Render HTML to DOCX
19doc.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.

Subscribe to Aspose Product Updates

Get monthly newsletters & offers directly delivered to your mailbox.