Klassenname |
|
Beschreibung
Dieser Postexecuter konvertiert HTML-Dateien in PDF-Dateien. Die Konfiguration erfolgt über eine Properties-Datei.
Unterstützt werden zwei Konvertierungs-Engines: Aspose (Standard) und Flying Saucer. Die Engine wird über die Property engine gesteuert.
Profil konfigurieren
Verwenden Sie ein Profil ohne Mapping. Über einen Eingangsagenten vom Typ „Datei“ lesen Sie die HTML-Datei in Phase 1 ein und konfigurieren Sie einen Antwortweg vom Typ „Datei“ mit diesem Postexecuter in Phase 6. Als Inhalt des Antwortwegs wählen Sie „wie empfangen“.
Engine-Vergleich
Kriterium | Aspose (Standard) | Flying Saucer |
|---|---|---|
CSS-Unterstützung | Umfangreich, inkl. weiter Teile von CSS3 | Nur CSS 2.1 |
JavaScript / | Nicht unterstützt | Nicht unterstützt |
HTML-Quelle | Beliebiges HTML, auch aus externen oder wenig kontrollierten Quellen | Statisches, selbst erzeugtes HTML mit CSS-2.1-konformem Styling |
Custom CSS ( | Nicht verfügbar | Verfügbar – wird nach dem originalen Styling angewendet |
Lizenz | Kommerziell | Open Source |
Property-Aktivierung |
|
|
Aspose empfiehlt sich, wenn das HTML aus externen oder schwer kontrollierbaren Quellen stammt, modernes CSS verwendet oder der Aufwand zur CSS-2.1-Konformität nicht gerechtfertigt ist.
Flying Saucer empfiehlt sich, wenn das HTML gezielt für diese Konvertierung erzeugt wird, vollständig unter eigener Kontrolle steht und CSS 2.1-konform gestaltet werden kann. Vor allem dann, wenn per custom.css eine genaue, reproduzierbare Ausgabe erforderlich ist.
Flying Saucer (ab Release 26.2)
Wird über engine=flying-saucer aktiviert. Es handelt sich um das Open-Source-Projekt Flying Saucer. HINWEIS Ein ungültiger Wert für engine (d. h. weder aspose noch flying-saucer) führt zu einer Exception. Die Bibliothek übernimmt das gesamte CSS-Styling des ursprünglichen HTML-Codes, sofern sie es verarbeiten kann.
Anforderungen und Einschränkungen
Das HTML-Eingabedokument muss vollständig statisches HTML sein.
<script>-Tags werden nicht ausgeführt und ignoriert.Nur CSS 2.1 wird unterstützt. CSS3-Features (z. B. Flexbox, Grid, viele moderne Selektoren) werden nicht oder nur teilweise verarbeitet.
Das HTML-Dokument muss daher alle notwendigen Styles inline oder via
<style>-Block mitbringen, die mit CSS 2.1 kompatibel sind.
Properties-Referenz
Property | Typ | Pflicht | Engine | Beschreibung |
|---|---|---|---|---|
| String | Nein | Beide | Konvertierungs-Engine. Gültige Werte: |
| String | Ja | Beide | Papierformat. Beispiele: |
| String | Ja | Beide | Seitenausrichtung. Gültige Werte: |
| Float | Nein | Beide | Oberer Seitenrand in mm. Standard: |
| Float | Nein | Beide | Unterer Seitenrand in mm. Standard: |
| Float | Nein | Beide | Linker Seitenrand in mm. Standard: |
| Float | Nein | Beide | Rechter Seitenrand in mm. Standard: |
| Float | Nein | Aspose | Schriftgröße in Punkt. Beispiel: |
| Float | Nein | Aspose | Zeilenabstand als Faktor. Beispiel: |
| Integer | Nein | Aspose | Schriftstil. |
| String | Nein | Flying Saucer | Pfad zu einer CSS-Datei mit zusätzlichen Styles. Wird nach dem originalen HTML-Styling angewendet und überschreibt dieses bei Konflikten. Muss CSS 2.1-kompatibel sein. |
Hinweis
Der Inhalt der
custom.css-Datei wird nicht von Lobster geprüft oder supportet. Stellen Sie sicher, dass die Datei CSS 2.1-kompatibel ist. Andernfalls kann es zu unerwarteten Darstellungsproblemen kommen.
Beispiele
Beispiel 1: Aspose (Standard)
format=A4
orientation=LANDSCAPE
margin.top=3
margin.bottom=3
margin.left=3
margin.right=0
font.linespacing=1.0
font.size=12.0
font.style=1Beispiel 2: Flying Saucer mit Custom CSS
engine=flying-saucer
format=A4
orientation=PORTRAIT
margin.top=10
margin.bottom=10
margin.left=15
margin.right=15
custom.css=/path/to/custom-overrides.css