Zum Inhalt springen

HTML-zu-PDF-API

HTML-zu-PDF-API für produktionsreife Dokumente

Erzeugen Sie Abrechnungen, Berichte, Verträge und Zertifikate aus dem HTML und CSS, das Ihre Anwendung bereits rendert. Eine Anfrage hinein, ein fertiges Dokument zurück, mit dem Papierformat, den Rändern und den wiederkehrenden Elementen, die Sie festlegen.

Kostenloses Konto erstellenAPI-Dokumentation lesen

  • Zwei Credits pro PDF
  • Sechs Papierformate
  • Erstattung bei fehlgeschlagenen Aufträgen
  • Im Vereinigten Königreich betriebene Infrastruktur
A4
Seite 1 von 3

Eine Anfrage

Dieses Dokument haben Sie schon einmal gebaut

Die meisten PDF-Bibliotheken verlangen, dass Sie ein Layout, das Sie schon in HTML und CSS geschrieben haben, in einer Zeichen-API mit eigenen Einheiten, Schriften und eigenem Boxmodell nachbauen. Das Dokument auf dem Bildschirm und das Dokument im Anhang laufen dann auseinander, und jede Änderung kostet doppelt.

Ironfang Render druckt das Markup, das Sie bereits haben, in einem echten Browser, mit Papierformat, Rändern, Skalierung sowie wiederkehrender Kopf- und Fußzeile pro Anfrage. Eine Vorlage, zwei Ausgaben, ein Ort für Änderungen.

POST /render/v1/pdf
Authorization: Bearer if_live_...
Content-Type: application/json

{
  "html": "<html>...your document...</html>",
  "paper_format": "a4",
  "print_background": true,
  "margin": { "top": 0.6, "bottom": 0.8 },
  "header_html": "<span></span>",
  "footer_html": "<p style='font-size:9px'>Page <span class='pageNumber'></span></p>"
}

200 OK
Content-Type: application/pdf

Funktionen

Dokumenteinstellungen als Anfrageparameter

Die Druckeinstellungen, denen Sie sonst in einem Browserdialog hinterherlaufen würden, pro Anfrage gesetzt und jedes Mal identisch.

Ihr HTML und CSS

Drucken Sie das Markup, das Ihre Anwendung bereits erzeugt. Keine PDF-spezifische Layoutbibliothek, keine zweite Implementierung eines Dokuments, das Sie schon einmal gebaut haben.

Sechs Papierformate

A3, A4, A5, Letter, Legal und Tabloid, im Hoch- oder Querformat, mit Rändern und Skalierungsfaktor pro Anfrage.

Wiederkehrende Kopf- und Fußzeilen

Liefern Sie HTML für Kopf- und Fußzeile, und es erscheint auf jeder Seite, dort, wo Seitenzahlen, Logos und Dokumentreferenzen hingehören.

Hintergründe, die den Druck überstehen

Schalten Sie das Drucken von Hintergründen ein, und Ihre Tönungen, Flächen und Markenfarben bleiben erhalten, statt so wegzufallen, wie ein Browser sie weglässt.

Dokumente hinter einem Login

Dieselben Header, derselbe Authorization-Header und dieselben Cookies wie bei einer Screenshot-Anfrage, sodass sich eine Abrechnung hinter einem Login so leicht drucken lässt wie eine öffentliche Seite.

Direkte binäre Antwort

Das PDF kommt in der Antwort zurück. Kein Job, den Sie abfragen, kein Bucket, aus dem Sie lesen müssen, es sei denn, Sie möchten für lange Dokumente den asynchronen Weg.

Anwendungsfälle

Dokumente, die man besser erzeugt, statt sie zweimal zu gestalten

Überall dort, wo Ihre Anwendung den Inhalt bereits rendert und jemand ihn als Datei braucht.

Abrechnungen und Zahlungsavise

Periodische Abrechnungen und Zahlungsavise, gerendert aus derselben Vorlage, die Ihre Kontoansichten bereits verwenden.

Bestellbestätigungen

Hängen Sie eine druckbare Bestätigung an die E-Mail, die Ihre Anwendung ohnehin versendet, erzeugt mit einer einzigen Anfrage.

Berichte und Exporte

Machen Sie aus einem Dashboard oder einer Berichtsseite ein Dokument, das jemand ablegen, drucken oder weiterleiten kann.

Zertifikate und Pässe

Personalisieren Sie pro Empfänger mit Variablen und fügen Sie einen geprüften QR-Code ins Layout ein.

Verträge und Briefe

Erzeugen Sie einheitliche Dokumente in Ihrem Design aus HTML statt aus einer Textverarbeitungsvorlage, für die sich niemand zuständig fühlt.

Druckbare Dashboards

Drucken Sie eine Ansicht hinter einem Login nach Zeitplan, damit sich das Wochenpaket von selbst zusammenstellt.

Eine vollständige Anfrage und was sie zurückgibt

Senden Sie das HTML, oder stattdessen eine url, mit Ihrem API-Schlüssel an POST /render/v1/pdf. Ein Erfolg ist 200 mit Content-Type: application/pdf und dem Dokument als Body. Alles andere ist JSON, {"error": {"code", "message"}}, prüfen Sie also den Status, bevor Sie den Body als PDF speichern. Diese Anfrage rendert die Rechnungsvorlage aus der Anleitung:

curl -sS https://api.ironfang.uk/render/v1/pdf \
  -H "Authorization: Bearer $IRONFANG_API_KEY" \
  -H "Content-Type: application/json" \
  --data-binary @request.json \
  -o invoice.pdf \
  -w '%{http_code} %{content_type}\n'

200 application/pdf bedeutet, dass invoice.pdf die Rechnung ist. Laden Sie request.json herunter, die HTML-Vorlage, aus der sie erstellt wurde, oder das PDF, das dabei entsteht.

Was Sie vor der Integration wissen sollten

  • Papier: A3, A4, A5, Letter, Legal und Tabloid, im Hoch- oder Querformat. Ohne Papierformat ist die Seite Letter, und das angeforderte Format hat Vorrang vor der @page-Größe eines Stylesheets.
  • Ränder werden in Zoll angegeben, für jede Seite einzeln. Kopf- und Fußzeilen werden innerhalb der Ränder gezeichnet, lassen Sie also Platz dafür.
  • Wenn Sie nur eine Fußzeile senden, druckt Chromium seine Standardkopfzeile mit Datum und Titel; senden Sie "header_html": "<span></span>" mit.
  • Hintergründe werden weggelassen, sofern print_background nicht true ist.
  • Es gelten die Schriften des Renderers: Laden Sie jede andere mit @font-face von einer öffentlichen URL oder aus einer Data-URI. Bilder und Stylesheets müssen aus dem öffentlichen Internet erreichbar sein.
  • Seitenumbrüche folgen CSS: break-inside: avoid hält eine Zeile oder einen Block zusammen, und der thead einer Tabelle wiederholt sich auf jeder Seite.
  • PDFs werden nie gecacht, und signierte URLs liefern keine PDFs aus. Bewahren Sie die Dokumente auf, die Sie ausstellen; ein Batch-Job kann sie in Ihren eigenen S3-Bucket liefern.
  • Ein Rendering bricht nach 30 Sekunden ab; ein fehlgeschlagenes Rendering wird erstattet.

Kostenlos im Browser ausprobierenPython-Beispiel

Seite 1 des PDFs, das diese Anfrage zurückgibt: Rechnung INV-1042 von Northwind Studio Ltd, sechs Positionen und ein fälliger Gesamtbetrag von 13.410,00 Pfund.
Die erste Seite von invoice.pdf, aus der Anleitung zur Rechnungsvorlage.

Sie erzeugen Rechnungen?

Ein Rechnungslauf braucht mehr als ein gerendertes Dokument: Tausende davon am Monatsersten, eine archivierte Kopie in Ihrem Besitz und einen Download-Link, den ein Kunde nutzen kann, ohne dass Ihre Anwendung die Bytes streamt. Dafür gibt es eine eigene Seite, und die Anleitung zu Rechnungs-PDFs enthält eine vollständige Rechnungsvorlage, die Anfrage, die sie rendert, und das PDF, das dabei entsteht.

API für Rechnungs-PDFsReferenz der PDF-Anfrage

Preise

Zwei Credits pro PDF, Fehlschläge werden erstattet

Starten Sie mit 250 kostenlosen Credits pro Monat, ohne Karte. Bezahlte Tarife beginnen bei 9 £ pro Monat für 5.000 Credits, die für Screenshots, PDFs, Bilder und Video gemeinsam gelten. Fehlgeschlagene Aufträge werden erstattet, und beim Erreichen einer Obergrenze pausiert das Rendern, statt Mehrkosten abzurechnen.

Preise von Ironfang Render ansehenMit anderen Anbietern vergleichen

Fragen

Bevor Sie integrieren

Die Details, die entscheiden, ob es passt, ohne vorher die ganze Referenz zu lesen.

Kann ich HTML direkt statt einer URL senden?
Ja, und das ist der Normalfall. Senden Sie das HTML, das Ihre Anwendung bereits rendert, und es wird unverändert gedruckt: Das Dokument, das Sie in Ihrer eigenen Anwendung sehen, ist das Dokument, das als Datei ankommt.
Welche Papierformate werden unterstützt?
A3, A4, A5, Letter, Legal und Tabloid, im Hoch- oder Querformat, mit Rändern in Zoll für jede Seite und einem Skalierungsfaktor, den Sie pro Anfrage festlegen.
Kann ich auf jeder Seite eine Kopf- und Fußzeile einfügen?
Ja. Liefern Sie HTML für Kopf- und Fußzeile, und es wiederholt sich auf jeder Seite, dort, wo Seitenzahlen, ein Logo oder eine Dokumentreferenz meist hingehören.
Warum fehlen meine Hintergrundfarben?
Browser drucken Hintergründe standardmäßig nicht. Schalten Sie das Drucken von Hintergründen in der Anfrage ein, und Ihre CSS-Farben, Tönungen und Flächen bleiben erhalten.
Muss die Seite öffentlich sein?
Nein. Eine PDF-Anfrage nimmt dieselben eigenen Header, denselben Authorization-Header und dieselben Cookies an wie ein Screenshot, sodass ein Dokument hinter einem Login genauso gedruckt wird.
Was kostet ein PDF?
Zwei Credits pro PDF, gegenüber einem für einen Screenshot. Jede PDF-Anfrage rendert das Dokument neu, fehlgeschlagene Aufträge werden erstattet, und beim Erreichen einer Obergrenze pausiert das Rendern, statt Mehrkosten abzurechnen.
Kann ich einen QR-Code in das Dokument einfügen?
Ja. Erzeugen Sie den Code mit dem QR-Endpunkt, der in jedem Tarif kostenlos ist und vor der Rückgabe prüft, ob sich der Code scannen lässt, und platzieren Sie ihn dann als Bild in Ihrem HTML. Er wird wie jedes andere Bild als Teil des Layouts gedruckt.

Weniger betreiben. Mehr ausliefern.

Erzeugen Sie Ihr erstes Dokument

Erstellen Sie ein Konto, holen Sie sich einen Schlüssel und senden Sie Ihr vorhandenes HTML. Das erste PDF ist in Ihren kostenlosen Credits enthalten.

250 kostenlose Credits pro Monat, ohne Karte, mit festen Nutzungsobergrenzen und Erstattung bei fehlgeschlagenen Aufträgen.