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:
PdfDeviceist die Basisklasse für Rendering-Geräte. Sie wird verwendet, um HTML (oder MHTML, SVG, EPUB, etc.) in eine PDF-Datei zu konvertieren.PdfRenderingOptionsist 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:
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.