Cette page peut contenir du texte traduit automatiquement.

HTML vers PDF pour .NET

Vous pouvez convertir HTML en PDF à l'aide de la bibliothèque Docotic.Pdf. L'extension gratuite HtmlToPdf pour la bibliothèque permet de convertir HTML, SVG, WEBP et d'autres formats web en PDF.

Ce guide présente les fonctionnalités HTML vers PDF fournies par l'extension et inclut des liens vers des pages qui donnent des détails supplémentaires sur les sujets abordés.

Illustration des processus à l'intérieur de la bibliothèque HTML vers PDF. Un document HTML entre dans la bibliothèque, qui génère ensuite un PDF en sortie.

Les bases de HTML vers PDF en C#

Vous aurez besoin de l'extension HtmlToPdf, d'un extrait de conversion et d'une clé de licence. Vous pouvez commencer avec une clé d'essai gratuite.

Installer l'extension depuis NuGet

Install-Package BitMiracle.Docotic.Pdf.HtmlToPdf

C'est la méthode recommandée, car elle gère automatiquement les dépendances et les mises à jour. Vous pouvez aussi installer l'extension manuellement à partir du zip contenant les binaires Docotic.Pdf, même si c'est plus compliqué et plus sujet aux erreurs.

Obtenir une clé de licence

Pour essayer la bibliothèque, obtenez une clé de licence gratuite à durée limitée sur la page de téléchargement de Docotic.Pdf. Si vous avez déjà acheté une licence, utilisez le code qui vous a été fourni après l'achat.

Toutes les licences Docotic.Pdf incluent les fonctionnalités HTML vers PDF. Il n'est pas nécessaire d'acheter une licence supplémentaire pour utiliser l'extension.

Ajouter le code de conversion

BitMiracle.Docotic.LicenseManager.AddLicenseData("PUT-LICENSE-HERE");

using var converter = await HtmlConverter.CreateAsync();
var html = "<h1>Hello, World<h1>";
using var pdf = await converter.CreatePdfFromStringAsync(html);
pdf.Save("output.pdf");

Dans le code, remplacez la valeur factice dans l'appel à la méthode AddLicenseData par une clé de licence valide.

Exécuter le code

Le code de conversion créera un PDF à partir du code HTML contenu dans la chaîne. Avec les options de conversion par défaut, le résultat contiendra une page au format A4.

La bibliothèque offre de nombreuses options pour personnaliser la conversion. Vous pouvez modifier la taille de sortie ou ajouter des en-têtes et des pieds de page aux pages générées. Il est également possible de convertir des ressources qui nécessitent une authentification.

Lisez l'article dédié sur les différentes façons de convertir HTML en PDF, qui explique chaque approche en détail.

Pourquoi Docotic.Pdf est le bon convertisseur HTML vers PDF?

La capacité à préserver les styles et la mise en page pendant la conversion fait de Docotic.Pdf le bon choix pour produire des PDF à partir de rapports HTML, de factures et d'autres documents. La bibliothèque produit des documents PDF au pixel près à partir de HTML et d'autres formats web tels que SVG. Réutiliser du contenu HTML existant est simple avec la bibliothèque.

Le convertisseur utilise le moteur de rendu de Google Chrome. Cela signifie le même niveau de conformité aux standards du web que l'un des meilleurs navigateurs.

Vous pouvez utiliser Docotic.Pdf pour produire des PDF à partir de mises en page très complexes avec du CSS moderne, JavaScript et des images. La conception web adaptative est également très bien prise en charge.

Aperçu de l'architecture de l'API

L'API HTML vers PDF n'est disponible que lorsqu'on utilise Docotic.Pdf avec l'extension HtmlToPdf gratuite.

L'extension fournit une API exclusivement asynchrone. Nous l'avons conçue pour fonctionner avec des gestionnaires d'événements asynchrones et des méthodes asynchrones. Cette conception permet de traiter les tâches de longue durée de manière fluide, et la conversion de médias en est un exemple idéal.

Versions .NET et prise en charge de la plateforme

La bibliothèque et l'extension ciblent .NET Standard 2.0. Cela signifie que les deux sont compatibles avec .NET 5 à .NET 10. En outre, .NET Core 2.0+ et .NET Framework 4.6.1+ sont également pris en charge.

Vous pouvez utiliser les fonctionnalités HTML vers PDF dans les applications Windows Forms, WPF, ASP.NET et console. L'extension peut s'exécuter dans des environnements cloud et dans des conteneurs Docker.

Avec l'aide de l'extension, vous pouvez générer un PDF à partir de HTML dans des environnements Windows, macOS et Linux.

Que se passe-t-il pendant une conversion ?

Par défaut, une conversion comprend les étapes suivantes :

  1. Votre code appelle la méthode CreateAsync de la classe HtmlConverter.
  2. L'extension vérifie si une version compatible de Google Chrome existe dans le dossier .local-chromium à l'intérieur du répertoire de travail courant.
  3. S'il n'existe pas de version compatible, l'extension en télécharge une et la décompresse dans le dossier .local-chromium.
  4. Lorsque votre code appelle la méthode CreatePdfAsync ou CreatePdfFromStringAsync, l'extension utilise Google Chrome pour charger le HTML fourni.
  5. Lorsque le contenu est prêt pour la conversion, l'extension demande au navigateur de produire un PDF.
  6. Google Chrome génère le PDF en utilisant les capacités de rendu de Chromium.
  7. L'extension renvoie à votre code un PdfDocument contenant le PDF produit.

Plateformes cloud et images Docker

L'extension HtmlToPdf prend en charge les plateformes cloud Azure et AWS, y compris les environnements serverless. Vous pouvez également utiliser l'API HTML vers PDF dans des conteneurs Docker. Voici la liste des environnements pris en charge :

  • Azure: Azure Functions, Azure App Service, Azure VPS
  • Amazon Web Services: AWS ECS, Amazon EC2
  • Docker: conteneurs Windows et Linux.

La bibliothèque et l'extension prennent entièrement en charge les changements matériels dynamiques, l'autoscaling et d'autres fonctionnalités d'exécution cloud-native.

Pour plus d'informations, consultez l'article sur l'exécution de l'extension dans des clouds et dans des images Docker.

Dans la plupart des scénarios cloud, une licence sans liaison est requise. La FAQ sur les licences explique comment choisir la licence appropriée pour les applications cloud.

Comment générer un PDF à partir d'un modèle HTML

Suivez ces étapes simples :

  1. Récupérez les données du modèle.
  2. Remplissez le modèle avec les données pour produire un HTML complet.
  3. Utilisez Docotic.Pdf pour convertir le HTML complet en PDF.

Illustration de la manière de générer un PDF à partir d'un modèle HTML. Des données factices complètent le modèle avant sa conversion en PDF.

Les données du modèle proviennent généralement d'une base de données ou d'une réponse d'API. Avec une base de données, il peut s'agir d'un seul enregistrement ou d'un ensemble d'enregistrements. Pour une API, il s'agit souvent d'un objet JSON décrivant une ou plusieurs entités.

Pour les exemples ci-dessous, j'utiliserai cette personne fictive :

var person = new
{
    Name = "Alice Johnson",
    Age = 27,
    Email = "alicej@example.com",
    Occupation = "Truck driver"
};

Maintenant que j'ai les données, je vais présenter trois options pour préparer et remplir un modèle HTML. Dans les trois cas, le HTML complet obtenu sera le même, même si les modèles correspondants sont différents.

Pour convertir le HTML complet, utilisez le code que j'ai déjà fourni.

Paramètres nommés

Les paramètres nommés sont des jetons encadrés par des délimiteurs doubles utilisant des symboles non alphanumériques. L'un des délimiteurs les plus résistants aux collisions est %%.

Voici un modèle avec des paramètres nommés, ainsi que le code qui en produit un HTML complet :

var template = @"<head><title>%%NAME%%'s Profile</title></head>
<body>
    <h1>%%NAME%%</h1>
    <p><strong>Age:</strong> %%AGE%%</p>
    <p><strong>Email:</strong> %%EMAIL%%</p>
    <p><strong>Occupation:</strong> %%OCCUPATION%%</p>
</body></html>";

var completeHtml = template
    .Replace("%%NAME%%", person.Name)
    .Replace("%%AGE%%", person.Age.ToString())
    .Replace("%%EMAIL%%", person.Email)
    .Replace("%%OCCUPATION%%", person.Occupation);

Utiliser des paramètres nommés est l'approche recommandée dans la plupart des cas. Toutefois, n'oubliez pas d'échapper toutes les valeurs que vous insérez à la place des paramètres.

Moteurs de modèles

Lorsque votre modèle est très complexe et/ou nécessite des éléments réutilisables, les paramètres nommés peuvent ne pas être très pratiques. Essayez plutôt un moteur de modèles comme Handlebars.Net.

Voici un exemple qui utilise un modèle et un code différents mais produit le même HTML :

var template = @"<head><title>{{name}}'s Profile</title></head>
<body>
    <h1>{{name}}</h1>
    <p><strong>Age:</strong> {{age}}</p>
    <p><strong>Email:</strong> {{email}}</p>
    <p><strong>Occupation:</strong> {{occupation}}</p>
</body></html>";

var compiledTemplate = Handlebars.Compile(template);
var completeHtml = compiledTemplate(person);

Les modèles Handlebars.Net sont sans logique. Si cela vous semble trop restrictif, essayez Scriban. Il fournit des conditions, des boucles, des expressions, des appels de fonctions et plus encore.

Paramètres positionnels

Ils sont très similaires aux paramètres nommés, mais utilisent des numéros de position au lieu de noms. Vous les avez déjà vus dans des appels à la méthode string.Format.

var template = @"<head><title>{0}'s Profile</title></head>
<body>
    <h1>{1}</h1>
    <p><strong>Age:</strong> {2}</p>
    <p><strong>Email:</strong> {3}</p>
    <p><strong>Occupation:</strong> {4}</p>
</body></html>";

var completeHtml = string.Format(
    template, person.Name, person.Name,
    person.Age, person.Email, person.Occupation);

Je vous recommande de n'utiliser les paramètres positionnels que dans les cas les plus simples. Voici deux raisons :

  • Lorsque le modèle utilise une valeur plus d'une fois, vous devez fournir cette valeur plusieurs fois dans l'appel.
  • Il est trop facile de changer l'ordre dans le modèle sans penser à mettre à jour le code.

Convertir ASPX en PDF

Utilisez Docotic.Pdf avec l'extension HtmlToPdf gratuite pour convertir ASPX en PDF. Le processus est simple :

  • Fournissez une implémentation de la méthode Render qui accumule le HTML produit.
  • Laissez le moteur ASP.NET générer le HTML de la page ASPX en exécutant du code et des contrôles côté serveur.
  • Convertissez le HTML accumulé en PDF et renvoyez le PDF dans la réponse mise à jour.

Consultez le code d'exemple pour voir comment générer un PDF à partir d'une page ASPX dans une application ASP.NET Web Forms. L'application d'exemple illustre le processus ci-dessus en créant une facture au format HTML ou PDF. Vous pouvez utiliser la même approche pour produire des versions PDF très fidèles de vos rapports, relevés et autres documents.

Convertir SVG en PDF

Les conversions SVG vers PDF vectoriel sont possibles avec l'extension HtmlToPdf pour la bibliothèque Docotic.Pdf. Vous pouvez utiliser la classe HtmlConverter comme convertisseur SVG vers PDF. Le code C# suivant montre une manière d'effectuer la conversion :

using var converter = await HtmlConverter.CreateAsync();
var uri = new Uri("https://bitmiracle.com/images/team.svg");
using var pdf = await converter.CreatePdfAsync(uri);
pdf.Save("output.pdf");

Le résultat du code ci-dessus est un PDF vectoriel de haute qualité. Le convertisseur fourni par l'extension HtmlToPdf utilise la largeur et la hauteur spécifiées dans le SVG pour déterminer le rapport d'aspect. Selon la taille du SVG, le convertisseur peut le mettre à l'échelle proportionnellement pour l'adapter à la page PDF.

Options qui influencent la taille de sortie

Pour produire un PDF d'une taille différente, définissez la taille de page et/ou les marges. Le SVG converti peut toujours être mis à l'échelle proportionnellement.

Une autre option consiste à spécifier la largeur et/ou la hauteur du SVG dans le code HTML, puis à convertir ce HTML. Dans la sortie, l'image aura la taille spécifiée. Si cette taille est supérieure à la page PDF, certaines parties de l'image ne seront pas visibles.

using var converter = await HtmlConverter.CreateAsync();
var html = $"<img src='https://bitmiracle.com/images/team.svg' width='200' />";
using var pdf = await converter.CreatePdfFromStringAsync(html);
pdf.Save("output.pdf");

Fichier SVG vers PDF

Pour convertir un fichier SVG en PDF, créez un Uri de fichier et transmettez-le à la méthode CreatePdfAsync. Une autre option consiste à créer un extrait HTML avec une balise img et à utiliser cet extrait avec la méthode CreatePdfFromStringAsync. Si vous utilisez des chemins relatifs dans le code HTML, fournissez l'URL de base via les options de conversion.

Pour convertir plusieurs fichiers SVG en PDF, créez un extrait HTML contenant plusieurs balises img et utilisez-le avec la méthode CreatePdfFromStringAsync. Si tous les fichiers se trouvent dans le même dossier, je recommande d'utiliser des chemins relatifs dans le code HTML et de fournir l'URL de base.

Ajouter un SVG à un PDF

Commencez par convertir le SVG en PDF à l'aide de l'une des méthodes HtmlConverter.

using var converter = await HtmlConverter.CreateAsync();
var uri = new Uri("https://bitmiracle.com/images/quote.svg");
using var svgPdf = await converter.CreatePdfAsync(uri);

Vous pouvez ensuite soit superposer le contenu du PDF produit sur un autre document, soit fusionner le document avec un autre PDF.

Pour superposer un SVG sur un PDF, créez un XObject à partir de la première page du document converti et dessinez ce XObject sur une page PDF d'un autre document. Comme ceci :

using var pdf = new PdfDocument("some-other.pdf");
var xObj = pdf.CreateXObject(svgPdf.Pages[0]);

pdf.Pages[0].Canvas.DrawXObject(xObj, 0, 0);
pdf.Save("output.pdf");

Pour fusionner un SVG dans un PDF, combinez le document PDF converti avec un autre PDF à l'aide de l'une des méthodes de fusion disponibles.

Convertir WEBP en PDF

WebP est un format web, vous pouvez donc le convertir en PDF à l'aide de Docotic.Pdf avec l'extension HtmlToPdf. Le code C# suivant montre comment convertir WebP en PDF avec une qualité élevée :

using var converter = await HtmlConverter.CreateAsync();
var html = $"<img src='https://bitmiracle.com/pdf-library/images/edit/reorder-pages.webp'/>";
using var pdf = await converter.CreatePdfFromStringAsync(html);
pdf.Save("output.pdf");

Le code ci-dessus ne spécifie pas les attributs width ou height pour la balise img, mais il est conseillé de les inclure. Gardez à l'esprit que si la taille d'image que vous spécifiez est supérieure à la page PDF, certaines parties de l'image ne seront pas visibles.

Comme WebP est un format matriciel, il s'agrandit mal. Je recommande d'utiliser des images à la taille et à la résolution maximales dont vous pensez avoir besoin.

Pour convertir un fichier WebP en PDF, utilisez le même code. Si votre HTML utilise des chemins relatifs, fournissez l'URL de base via les options de chargement. Utilisez un Uri de fichier comme URL de base lors de la conversion d'images locales.

Convertir XML en PDF à l'aide de XSLT

Pour convertir XML en PDF, transformez d'abord le XML en HTML à l'aide d'une transformation XSLT. Convertissez ensuite le HTML obtenu en PDF avec Docotic.Pdf et l'extension HtmlToPdf.

Voici le code C# de conversion XML en PDF :

var transform = CreateTransform("invoice.xsl");
var html = TransformToHtml("invoice.xml", transform);

using var converter = await HtmlConverter.CreateAsync();
using var pdf = await converter.CreatePdfFromStringAsync(html);
pdf.Save("invoice.pdf");

Le code :

  • Crée un objet de transformation XSLT à la première ligne.
  • Transforme le fichier XML en document HTML à la deuxième ligne.
  • Convertit le résultat de la transformation (la chaîne HTML) en PDF sur les lignes restantes.

Examinons de plus près les deux premiers points. Le troisième point est entièrement couvert dans cette section.

Créer une transformation XSLT

La première étape du processus de conversion consiste à créer un objet de transformation XSLT. Le code suivant montre comment créer un tel objet :

public static XslCompiledTransform CreateTransform(string xsltFileName)
{
    var transform = new XslCompiledTransform();
    transform.Load(xsltFileName);
    return transform;
}

Comme son nom l'indique, XslCompiledTransform compile la feuille de style fournie et en produit du code IL. Si votre code doit transformer XML en PDF en volume, réutilisez le même objet de transformation pour améliorer les performances.

Transformer XML en HTML

La deuxième étape consiste à générer du HTML à partir du XML à l'aide de l'objet de transformation XSLT créé à l'étape précédente.

public static string TransformToHtml(string xmlFileName, XslCompiledTransform transform)
{
    using var xmlReader = XmlReader.Create(xmlFileName);
    using var sw = new StringWriter();
    using var writer = XmlWriter.Create(sw, transform.OutputSettings);
    transform.Transform(xmlReader, null, writer);
    return sw.ToString();
}

Le code utilise XmlReader et XmlWriter parce qu'ils sont bien adaptés aux gros fichiers XML et aident à maintenir une faible utilisation de la mémoire.

Code d'exemple pour la conversion XML en PDF

Notre dépôt d'exemples comprend des versions C# et VB.NET d'une application d'exemple qui convertit une facture XML en PDF. L'application d'exemple contient une facture XML de démonstration et la feuille de style XSLT correspondante.

Lorsque vous accédez à une URL qui renvoie du XML dans un navigateur moderne, le navigateur peut appliquer automatiquement la XSLT associée (si elle est présente) pour générer et afficher du HTML lisible. Cela ne fonctionne que lorsque les fichiers XML et XSLT sont hébergés sur le même serveur. Pour éviter les requêtes inter-origines, le navigateur ne chargera pas et n'appliquera pas la feuille de style lorsque vous ouvrez directement le fichier XML depuis le système de fichiers local.

Compromis et autres façons de créer un PDF

L'API HTML vers PDF n'est pas la seule façon de générer des PDF avec Docotic.Pdf, et ce n'est pas toujours la plus efficace. Cette section présente les alternatives pour vous aider à choisir la bonne option pour votre scénario.

Illustration des façons de créer un PDF : en utilisant HTML vers PDF, le Canvas API, une génération basée sur des modèles, le Layout API et la composition.

Quand HTML vers PDF est le bon choix

Choisissez l'approche HTML vers PDF lorsque votre équipe crée déjà des documents avec HTML/CSS. En particulier si vos documents ressemblent à des pages web : factures, bons de commande, certificats, reçus et autres documents similaires.

L'extension HtmlToPdf permet aux équipes de réutiliser des modèles HTML/CSS existants et de bénéficier de capacités de mise en page et de rendu très fidèles. Avec cette extension, la voie vers une sortie PDF de haute qualité peut être la plus rapide.

Limitations à garder à l'esprit

L'API HTML vers PDF utilise le moteur de rendu HTML de Google Chrome. Ce moteur est puissant, mais il implique une surcharge. Une conversion HTML vers PDF typique consomme plus de CPU et de mémoire que, par exemple, le dessin direct sur un canevas de page PDF. Cette surcharge peut ralentir la génération par lots à grand volume.

Le moteur de navigateur augmente également l'empreinte d'exécution, ce qui peut être indésirable dans des images Docker minimales ou des environnements contraints. Par exemple, l'API peut ne pas fonctionner dans des environnements serverless avec des limites très strictes sur la consommation de mémoire et le temps d'exécution.

Autres façons de produire des PDF dans Docotic.Pdf

La bibliothèque Docotic.Pdf fournit plusieurs autres façons de créer des documents, chacune adaptée à des besoins différents :

  • Génération directe de PDF via le Canvas API
    Idéal pour des mises en page structurées et prévisibles, comme des billets, des étiquettes ou des formulaires. Offre des performances maximales et un contrôle total sur les coordonnées, la typographie et le placement du contenu.

  • Génération de PDF basée sur des modèles
    Souvent le meilleur choix lorsque vous travaillez avec des modèles approuvés et soumis à des contraintes de conformité. Vous partez d'un PDF existant et remplissez les champs, remplacez les espaces réservés et joignez des documents liés selon les besoins.

  • Génération de PDF avec le Layout API
    Fournit des éléments de base tels que des pages, des conteneurs, des images, des paragraphes de texte et d'autres éléments de mise en page. Vous décrivez la mise en page du PDF entièrement en code à l'aide d'une API fluide, et la bibliothèque génère le PDF à partir de votre mise en page.

  • Composition à partir d'autres PDF et images
    Offre un moyen léger d'assembler des relevés, des rapports, des lots de documents et d'autres documents à partir de PDF et d'images existants. Vous convertissez des images en pages PDF, combinez plusieurs PDF, ajoutez des pages ou réutilisez des fragments.

Comparaison avec d'autres solutions HTML vers PDF

Pour vous aider à choisir la bonne bibliothèque HTML vers PDF pour .NET, voici des informations sur la façon dont Docotic.Pdf avec l'extension HtmlToPdf se compare à d'autres solutions populaires pour convertir HTML en PDF.

Points clés de comparaison

La plupart des solutions basées sur un navigateur fournissent un rendu de haute qualité et prennent entièrement en charge HTML, CSS et JavaScript modernes. Cependant, il existe des différences importantes.

Solution Quand l'utiliser Idéal pour
Docotic.Pdf avec le module complémentaire HtmlToPdf Conversion de rapports, factures et reçus avec une fidélité visuelle au pixel près Logiciels professionnels nécessitant à la fois la conversion HTML vers PDF et l'édition PDF, avec assistance professionnelle
Puppeteer Lorsque le rendu HTML/CSS/JS moderne avec une fidélité de niveau navigateur est requis et que seule une sortie HTML vers PDF est nécessaire Génération HTML vers PDF au pixel près avec des besoins de gratuité ou de code source ouvert
IronPDF Lorsque votre équipe dispose d'une licence Iron Suite ou d'une expérience préalable avec IronPDF Équipes s'appuyant sur plusieurs composants Iron Software
wkhtmltopdf Lorsqu'une empreinte relativement légère est requise et que votre HTML/CSS est simple et exempt de références externes ou non fiables Compatibilité héritée avec des systèmes utilisant déjà wkhtmltopdf

Comparaison détaillée

Consultez les informations du tableau pour obtenir une vue complète et tirer vos propres conclusions.

  Docotic.Pdf avec HtmlToPdf Puppeteer IronPDF wkhtmltopdf
Moteur Chrome sans interface Chrome sans interface / Chromium Chrome sans interface Qt WebKit hérité
Fidélité du rendu Au pixel près Au pixel près Au pixel près Au pixel près avec des particularités et des limitations
Prise en charge de HTML5 Complète Complète Complète Partielle et limitée
Prise en charge de CSS3 Complète Complète Complète Extrêmement limitée
Prise en charge de JavaScript Complète Complète Complète Partielle et obsolète
Intégration avec du code .NET API .NET asynchrone API .NET asynchrone avec PuppeteerSharp ; scripts Node.js sinon. API .NET asynchrone Processus en ligne de commande ou bibliothèque d'enveloppement C# (comme DinkToPdf)
Fonctionnalités PDF au-delà de la conversion HTML Étendues Aucune Limitées Aucune
Type d'assistance Assistance professionnelle pour les prospects et les clients Assistance communautaire uniquement Assistance professionnelle pour les prospects et les clients Assistance communautaire uniquement
Disponibilité de l'assistance Délais de réponse garantis ; assistance prioritaire avec les licences haut de gamme Réponses de bénévoles ; assistance prioritaire basée sur le parrainage disponible pour PuppeteerSharp Délais de réponse garantis ; assistance prioritaire avec les licences haut de gamme Aucun canal d'assistance formel
État de maintenance Maintenu activement Maintenu activement Maintenu activement N'est plus maintenu
Licence Commerciale, avec des licences gratuites pour les cas d'utilisation éligibles Apache-2.0 ; MIT pour PuppeteerSharp Commerciale LGPL-3.0 ; MIT pour DinkToPdf
Droits de redistribution Sans redevance avec toutes les licences Sans redevance avec toutes les licences Non inclus ; nécessite un achat séparé Sans redevance avec toutes les licences
Licences développeur Développeurs illimités avec toutes les licences Développeurs illimités avec toutes les licences Varie selon le niveau de licence ; illimité uniquement dans la licence de plus haut niveau Développeurs illimités avec toutes les licences
Vérification de licence en ligne Aucune vérification en ligne requise Aucune vérification de licence effectuée Requise pour toutes sauf la licence premium Aucune vérification de licence effectuée

Conclusion

Docotic.Pdf avec l'extension HtmlToPdf fournit des conversions HTML vers PDF fiables et de haute qualité, ainsi qu'une API PDF complète. La bibliothèque fonctionne bien pour générer des rapports PDF, des factures, des reçus et d'autres documents métier à partir de HTML, tout en préservant une fidélité visuelle au pixel près.

L'extension fournit une API .NET asynchrone qui s'exécute entièrement sur site. Vos données ne quittent jamais vos serveurs, ce qui vous donne un contrôle complet sur la sécurité et la confidentialité.

Au-delà de la conversion HTML vers PDF, Docotic.Pdf peut ajouter une protection par mot de passe aux PDF générés et les signer avec des signatures numériques, y compris des signatures avec LTV.

Vous pouvez assembler des documents finaux en fusionnant plusieurs PDF générés. Si un PDF devient trop volumineux après conversion HTML ou fusion, la bibliothèque peut supprimer les objets en double à l'intérieur du fichier et appliquer d'autres méthodes pour réduire la taille du fichier. Pour améliorer l'expérience de lecture, Docotic.Pdf peut aussi optimiser les PDF pour Fast Web View (linéariser le PDF).

Étapes suivantes :

Foire aux questions

Comment choisir une bibliothèque HTML vers PDF pour .NET ?

Avant de sélectionner une bibliothèque, définissez et rassemblez vos exigences. Vous gagnerez du temps lors de l'évaluation si vous savez qu'une bibliothèque candidate ne peut pas fusionner les PDF convertis et que cette fonctionnalité est requise pour votre solution. Consultez la section de comparaison pour un aperçu côte à côte des bibliothèques HTML vers PDF populaires pour .NET.

Pourquoi mon HTML ne s'affiche-t-il pas correctement dans le PDF ?

Si votre HTML s'affiche correctement dans Google Chrome mais pas dans le PDF généré, vérifiez les options de conversion. Assurez-vous qu'il y a suffisamment de largeur pour contenir le contenu. Le HTML peut aussi nécessiter l'exécution de JavaScript avant la conversion.

Pourquoi utiliser des modèles HTML plutôt que des API PDF directes ?

L'utilisation de modèles HTML rend la mise en page de votre solution très flexible. Vous pouvez facilement modifier l'apparence de vos PDF grâce aux puissantes capacités de style de HTML et CSS. De plus, vous n'avez pas besoin de dupliquer la conception de vos documents en ligne avec une API PDF.

Comment convertir ASPX en PDF ?

Pour convertir ASPX en PDF, laissez le moteur ASP.NET générer le HTML de la page ASPX, puis convertissez ce HTML en PDF à l'aide de la bibliothèque Docotic.Pdf. Plus de détails sont disponibles dans la section correspondante.

Comment superposer un SVG sur un PDF ?

Pour superposer un SVG sur un PDF, générez un PDF à partir du SVG, puis créez un XObject à partir de la première page du document généré. Comme le XObject a un fond transparent, vous pouvez le placer au-dessus d'une page PDF dans un autre document.

Comment ajouter un filigrane au PDF généré ?

Pour ajouter un filigrane à un document PDF produit à partir de HTML, créez un XObject, remplissez-le avec le contenu du filigrane, puis dessinez le XObject au-dessus des pages du document. Vous pouvez utiliser des graphiques vectoriels, des images et du texte pour le filigrane.

Docotic.Pdf est-il meilleur que wkhtmltopdf ?

Docotic.Pdf prend entièrement en charge HTML, CSS et JavaScript modernes, alors que wkhtmltopdf produit souvent un rendu incohérent pour les documents web modernes. En outre, Docotic.Pdf fournit des API au-delà de la conversion HTML vers PDF. Par exemple, la bibliothèque peut signer des PDF avec des signatures numériques activées par LTV, alors que wkhtmltopdf ne peut convertir que du HTML.