Aller au contenu

API HTML vers PDF

API HTML vers PDF pour des documents prêts pour la production

Générez des relevés, des rapports, des contrats et des certificats à partir du HTML et du CSS que votre application affiche déjà. Une requête en entrée, un document fini en sortie, avec le format de papier, les marges et les éléments répétés que vous définissez.

Créer un compte gratuitLire la documentation de l'API

  • Deux crédits par PDF
  • Six formats de papier
  • Remboursement des travaux échoués
  • Infrastructure exploitée au Royaume-Uni
A4
Page 1 sur 3

Une seule requête

Vous avez déjà construit ce document une fois

La plupart des bibliothèques PDF vous demandent de reconstruire une mise en page déjà écrite en HTML et CSS, dans une API de dessin avec ses propres unités, polices et modèle de boîtes. Le document à l'écran et celui en pièce jointe finissent par diverger, et chaque modification coûte deux fois.

Ironfang Render imprime le balisage que vous avez déjà, dans un vrai navigateur, avec le format de papier, les marges, l'échelle, l'en-tête et le pied de page répétés définis à chaque requête. Un modèle, deux sorties, un seul endroit à modifier.

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

Fonctionnalités

Les réglages du document, en paramètres de requête

Les réglages d'impression que vous iriez sinon chercher dans une boîte de dialogue du navigateur, définis à chaque requête et identiques à chaque fois.

Votre HTML et votre CSS

Imprimez le balisage que votre application produit déjà. Pas de bibliothèque de mise en page propre au PDF, pas de seconde implémentation d'un document que vous avez déjà construit.

Six formats de papier

A3, A4, A5, Letter, Legal et Tabloid, en portrait ou en paysage, avec des marges et un facteur d'échelle définis à chaque requête.

En-têtes et pieds de page répétés

Fournissez le HTML de l'en-tête et du pied de page, et il apparaît sur chaque page, là où vont les numéros de page, les logos et les références du document.

Des arrière-plans qui résistent à l'impression

Activez l'impression des arrière-plans et vos teintes, vos encadrés et vos couleurs de marque sont conservés au lieu d'être supprimés comme le fait un navigateur.

Documents derrière une connexion

Les mêmes en-têtes, en-tête Authorization et cookies qu'une requête de capture d'écran : un relevé authentifié s'imprime aussi facilement qu'une page publique.

Réponse binaire directe

Le PDF revient dans la réponse. Pas de tâche à interroger, pas de bucket à lire, sauf si vous voulez la voie asynchrone pour les longs documents.

Cas d'usage

Des documents à générer plutôt qu'à concevoir deux fois

Partout où votre application affiche déjà le contenu et où quelqu'un en a besoin sous forme de fichier.

Relevés et avis de paiement

Relevés périodiques et avis de paiement, générés à partir du même modèle que vos écrans de compte.

Confirmations de commande

Joignez une confirmation imprimable à l'e-mail que votre application envoie déjà, produite par une seule requête.

Rapports et exports

Transformez un tableau de bord ou une page de rapport en un document que l'on peut classer, imprimer ou transférer.

Certificats et pass

Personnalisez pour chaque destinataire avec des variables et intégrez un QR code vérifié à la mise en page.

Contrats et courriers

Produisez des documents cohérents et à vos couleurs à partir de HTML plutôt que d'un modèle de traitement de texte dont personne ne s'occupe.

Tableaux de bord imprimables

Imprimez une vue authentifiée selon un calendrier, pour que le dossier hebdomadaire se construise tout seul.

Une requête complète, et ce qu'elle renvoie

Envoyez le HTML, ou un champ url à la place, à POST /render/v1/pdf avec votre clé API. Un succès est un 200 avec Content-Type: application/pdf et le document comme corps. Tout le reste est du JSON, {"error": {"code", "message"}} : vérifiez donc le statut avant d'enregistrer le corps comme PDF. Cette requête génère le modèle de facture du guide :

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 signifie que invoice.pdf est la facture. Téléchargez request.json, le modèle HTML à partir duquel elle a été construite, ou le PDF qu'elle produit.

Ce qu'il faut savoir avant d'intégrer

  • Papier : A3, A4, A5, Letter, Legal et Tabloid, en portrait ou en paysage. Sans format de papier, la page est au format Letter, et le format demandé l'emporte sur la taille @page d'une feuille de style.
  • Les marges sont en pouces, pour chaque côté. Les en-têtes et pieds de page sont dessinés à l'intérieur des marges : prévoyez-leur de la place.
  • Envoyer seulement un pied de page fait imprimer à Chromium son en-tête par défaut, avec la date et le titre ; envoyez "header_html": "<span></span>" en même temps.
  • Les arrière-plans sont omis sauf si print_background vaut true.
  • Les polices sont celles du moteur de rendu : chargez-en d'autres avec @font-face depuis une URL publique ou une data URI. Les images et les feuilles de style doivent être accessibles depuis l'internet public.
  • Les sauts de page suivent le CSS : break-inside: avoid garde une ligne ou un bloc d'un seul tenant, et le thead d'un tableau se répète sur chaque page.
  • Les PDF ne sont jamais mis en cache, et les URL signées ne servent pas de PDF. Conservez les documents que vous émettez ; une tâche par lot peut les livrer dans votre propre bucket S3.
  • Un rendu s'arrête au bout de 30 secondes ; un rendu échoué est remboursé.

Essayer gratuitement dans le navigateurExemple en Python

Page 1 du PDF renvoyé par cette requête : facture INV-1042 de Northwind Studio Ltd, six lignes et un total dû de 13 410,00 livres.
La première page d'invoice.pdf, tirée du guide du modèle de facture.

Vous générez des factures ?

Une facturation demande plus qu'un seul document rendu : des milliers le premier du mois, une copie archivée qui vous appartient, et un lien de téléchargement qu'un client peut utiliser sans que votre application diffuse les octets. Tout cela a sa propre page, et le guide des factures PDF contient un modèle de facture complet, la requête qui le génère et le PDF obtenu.

API de factures PDFRéférence de la requête PDF

Tarifs

Deux crédits par PDF, échecs remboursés

Commencez avec 250 crédits gratuits chaque mois, sans carte. Les offres payantes commencent à 9 £ par mois pour 5 000 crédits, partagés entre captures d'écran, PDF, images et vidéo. Le travail échoué est remboursé, et atteindre un plafond interrompt le rendu au lieu de facturer un dépassement.

Voir les tarifs d'Ironfang RenderComparer avec d'autres fournisseurs

Questions

Avant de vous lancer

Les détails qui décident si la solution vous convient, sans lire d'abord toute la référence.

Puis-je envoyer du HTML directement plutôt qu'une URL ?
Oui, et c'est le cas le plus courant. Envoyez le HTML que votre application affiche déjà et il est imprimé tel quel : le document que vous voyez dans votre application est celui qui arrive sous forme de fichier.
Quels formats de papier sont pris en charge ?
A3, A4, A5, Letter, Legal et Tabloid, en portrait ou en paysage, avec des marges en pouces pour chaque côté et un facteur d'échelle défini à chaque requête.
Puis-je mettre un en-tête et un pied de page sur chaque page ?
Oui. Fournissez le HTML de l'en-tête et du pied de page et il se répète sur chaque page, là où vont habituellement les numéros de page, un logo ou une référence de document.
Pourquoi mes couleurs d'arrière-plan manquent-elles ?
Les navigateurs n'impriment pas les arrière-plans par défaut. Activez l'impression des arrière-plans dans la requête et vos couleurs CSS, teintes et encadrés sont conservés.
La page doit-elle être publique ?
Non. Une requête PDF accepte les mêmes en-têtes personnalisés, en-tête Authorization et cookies qu'une capture d'écran : un document derrière une connexion s'imprime de la même façon.
Combien coûte un PDF ?
Deux crédits par PDF, contre un pour une capture d'écran. Chaque requête PDF génère le document à nouveau, le travail échoué est remboursé, et atteindre un plafond interrompt le rendu au lieu de facturer un dépassement.
Puis-je inclure un QR code dans le document ?
Oui. Générez le code avec l'endpoint QR, gratuit dans toutes les offres, qui vérifie que le code est lisible avant de le renvoyer, puis placez-le dans votre HTML comme image. Il s'imprime avec la mise en page comme n'importe quelle autre image.

Moins à exploiter. Plus à livrer.

Générez votre premier document

Créez un compte, récupérez une clé et envoyez votre HTML existant. Le premier PDF est compris dans vos crédits gratuits.

250 crédits gratuits chaque mois, sans carte, avec des plafonds d'utilisation stricts et le remboursement des travaux échoués.