Passer au contenu du pied de page
COMPARAISONS DE PRODUITS

Wkhtmltopdf C# Comparaison avec Exemples de Code

IronPDF contre wkhtmltopdf

Comparaison détaillée des fonctionnalités, étayée par des éléments issus de la documentation officielle, des listes NuGet et des dépôts de projets.

⚠️
wkhtmltopdf est obsolète. Le projet est archivé et n'est plus maintenu. Il utilise un moteur Qt WebKit dépassé qui ne prend pas en charge les normes CSS3, Flexbox, Grid et JavaScript actuelles. Il est recommandé de migrer vers une bibliothèque activement maintenue pour les applications en production.
wkhtmltopdf
2
sur 17 fonctionnalités
2 Oui 3 Partiellement 4 Profondeur de l'emballage 8 Non
⚠ Déprécié / Archivé
IronPDF ✦
17
sur 17 fonctionnalités
17 Oui
✦ Couverture complète
<════ READING & EXTRACTION ════ --> <════ LICENSING & SUPPORT ════ -->
Caractéristique wkhtmltopdf IronPDF ✦
PDF Creation & Conversion
Conversion HTML/CSS en PDF ⚠ Outdated Engine
Sa fonction principale est la conversion HTML vers PDF, mais son moteur est Qt WebKit (obsolète). Il ne prend pas en charge les technologies modernes CSS3, Flexbox et Grid.
✓ Yes
Moteur Chromium intégré — HTML5/CSS3 au pixel près avec Flexbox, Grid et standards web modernes.
Exécution de JavaScript ~ Partial
Prend en charge les options liées à JS, mais le moteur WebKit, vieillissant, recommande des alternatives pour les scripts JS complexes.
✓ Yes
Rendu complet HTML/CSS/ JavaScript via Chromium intégré — graphiques dynamiques, SPA, contenu interactif.
Génération programmatique ✕ No
Conçue uniquement pour la conversion de HTML en PDF — et non comme une bibliothèque de dessin PDF programmatique générale.
✓ Yes
Créez des PDF vierges via le constructeur PdfDocument . Contrôle total par programmation.
Merge, Split & Rearrange ✕ No
Outil de conversion uniquement ; aucune preuve d'API de fractionnement/fusion de pages PDF.
✓ Yes
Fusion/séparation prise en charge avec un guide d'utilisation dédié. Opérations en une seule ligne.
Editing & Manipulation
Headers, Footers & Page Numbers ✓ Yes
Le moteur fournit des fonctionnalités d'en-tête/pied de page (fonctionnalité courante de wkhtmltopdf via les options de ligne de commande).
✓ Yes
API dédiée pour l'en-tête et le pied de page + prise en charge des espaces réservés sur les pages. Basée sur HTML et entièrement personnalisable.
Watermarks & Stamps ✕ No
Il ne s'agit pas d'un éditeur PDF ; l'ajout de filigrane se fait généralement en modifiant le modèle HTML avant la conversion.
✓ Yes
Tutoriels pour l'ajout de filigranes/tampons avec des outils de tamponnage HTML/texte/image. Contrôle total de l'opacité, de la rotation et de la position.
Reading & Extraction
Extraire du texte des PDFs ✕ No
Convertisseur uniquement ; pas une bibliothèque d'extraction de texte.
✓ Yes
ExtractAllText prend en charge les options de commande (par exemple, la commande visuelle).
Convertir les pages en images ✕ No
wkhtmltopdf convertit HTML→PDF ; wkhtmltoimage convertit HTML→image, et non PDF→image.
✓ Yes
API de conversion PDF en image/rasterisation documentées. Sortie native aux formats PNG, JPEG et BMP.
OCR pour les PDF numérisés ✕ No
La reconnaissance optique de caractères (OCR) n'est pas prise en charge par le convertisseur HTML→PDF.
✓ Via IronOCR
Créez des PDF consultables grâce à la reconnaissance optique de caractères (OCR). Prise en charge de plus de 127 langues via l'intégration IronOCR .
Security & Compliance
Signatures numériques ✕ No
wkhtmltopdf n'implémente pas la signature PDF.
✓ Yes
Guide de signature dédié avec prise en charge des certificats X509/PFX.
Conformité PDF/A ✕ No
Les flux de travail de conformité PDF/A ne sont pas documentés comme sortie prise en charge.
✓ Yes
Guide de conversion PDF/A (ex. : détails sur le format PDF/A-3B). Conforme aux normes Enterprise .
Platform & Deployment
Support multiplateforme ⚙ Wrapper-Dependent
La compatibilité multiplateforme nécessite l'installation des binaires natifs appropriés pour chaque système d'exploitation. Ce n'est pas un système autonome.
✓ Yes
OS-specific NuGet packages + macOS & Linux guides. Windows, Linux, macOS, ARM supported.
Déploiement serveur / Docker ⚙ Wrapper-Dependent
Nécessite la distribution de binaires natifs ; le projet mentionne l'état du moteur hérité. Configuration Docker complexe.
✓ Yes
Guides officiels Azure Functions + Docker ; conteneur moteur séparé optionnel.
Délai d'obtention du premier PDF ~ Complex
Nécessite la gestion native des binaires et l'intégration d'un wrapper. Il ne s'agit pas d'une simple installation NuGet .
✓ Simple
Le guide d'installation rapide présente l'installation et le code minimal pour la conversion HTML→PDF. Install-Package IronPdf .
Licensing & Support
Clarté des licences ~ Complex
La licence LGPLv3 introduit des considérations de copyleft ; les différents wrappers .NET ont des licences différentes.
✓ Clear
CLUF et conditions de licence documentés publiquement. Licences commerciales perpétuelles.
Support commercial / SLA ? Unknown
Le moteur est open source (archivé) ; le contrat de niveau de service du fournisseur n'est pas décrit dans les sources citées. Assistance réservée à la communauté.
✓ 24/5 SLA
Portail d'assistance + " assistance technique 24h/24 et 5j/7 " avec SLA garanti — e-mail, chat en direct, téléphone.
Qualité de la documentation ~ Partial
La documentation en ligne de commande du moteur est exhaustive, mais la qualité de la documentation du wrapper .NET est très variable.
✓ Extensive
Documentation complète " prise en main/guide pratique/exemples " avec des exemples de code à copier-coller et des tutoriels vidéo.
Résumé : wkhtmltopdf est un convertisseur HTML vers PDF obsolète utilisant un moteur Qt WebKit dépassé. Il ne permet pas d'extraire du texte, de signer des PDF, de produire des PDF/A, de fusionner/séparer des pages, d'ajouter un filigrane ou de pixelliser des pages, et son déploiement nécessite une gestion manuelle des binaires natifs.
IronPDF est une alternative moderne et activement maintenue — essayez-la gratuitement pendant 30 jours →

Choisir la bonne bibliothèque PDF pour vos besoins peut être difficile lorsqu'il semble y avoir d'innombrables options. Lors de la comparaison, les facteurs clés incluent les fonctionnalités offertes par rapport à vos besoins, le niveau de support et de documentation, la courbe d'apprentissage et les coûts de licence. Il est crucial de peser également les implications en matière de sécurité.

Cette comparaison porte sur deux bibliothèques de génération de PDF aux philosophies de conception distinctes : WkHtmlToPdf et IronPDF. WkHtmlToPdf s'est forgé une réputation de convertisseur HTML-PDF en ligne de commande simple d'utilisation, et de nombreuses équipes l'ont utilisé précisément à cette fin. Cependant, utiliser WkHtmlToPdf en C# peut introduire des risques de sécurité. Comme il repose sur un exécutable externe (WebKit), des vulnérabilités ou une mauvaise sécurisation des commandes pourraient potentiellement être exploitées, risquant ainsi un compromis du serveur via un HTML ou des arguments malveillants.

IronPDF est une bibliothèque .NET gérée qui s'exécute dans le contexte de sécurité de votre application, réduisant ainsi les surfaces d'attaque associées aux processus externes. Les sections ci-dessous comparent leurs fonctionnalités, leurs capacités de rendu et leur architecture de sécurité.

Que sont IronPDF et WkHtmlToPdf ?

IronPDF est une bibliothèque C# pour la création, la manipulation et le traitement de fichiers PDF au sein du .NET Framework. Son API couvre la conversion HTML vers PDF, l'extraction de texte et d'images, la gestion des formulaires et les options de sécurité des documents telles que le chiffrement et les signatures numériques — le tout accessible via un seul package NuGet . Vous pouvez installer IronPDF via la console du gestionnaire de packages NuGet et faire fonctionner la bibliothèque en quelques minutes. Pour plus d'informations, consultez le site officiel d'IronPDF .

WkHtmlToPdf est un wrapper P/Invoke .NET Core pour la bibliothèque WkHtmlToPdf, un outil populaire de conversion de pages HTML en PDF utilisant le moteur de rendu Qt WebKit. Cette bibliothèque open source, dérivée de DinkToPdf, se concentre sur la conversion HTML vers PDF en privilégiant la simplicité. C'est facile à installer; après avoir téléchargé et exécuté l'exécutable WkHtmlToPdf, il vous suffit de vous assurer qu'il est ajouté à la variable d'environnement chemin de votre système. WkHtmlToPdf est une bibliothèque légère, bien que son champ d'application soit axé sur la conversion plutôt que sur la manipulation plus large des fichiers PDF. Pour évaluer les différences de sécurité et de fonctionnalités d'IronPDF dans votre propre environnement, une licence d'essai gratuite de 30 jours est disponible.

Compatibilité multiplateforme

IronPDF

IronPDF prend en charge un large éventail d'environnements au sein du .NET Framework, assurant un fonctionnement cohérent sur différentes plateformes.

  • Versions .NET :

  • Entièrement écrit en et supports C#, VB.NET, et F#.

    • .NET Core (8, 7, 6, 5 et 3.1+).
    • .NET Standard (2.0+).
    • .NET Framework (4.6.2+).
  • Environnements d'application : IronPDF fonctionne dans divers environnements d'application tels que Windows, Linux, Mac, Docker , Azure et AWS.

  • IDEs : Fonctionne avec des IDEs tels que Microsoft Visual Studio et JetBrains Rider & ReSharper.

  • OS et Processeurs : Prend en charge plusieurs systèmes d'exploitation et processeurs différents, y compris Windows, Mac, Linux, x64, x86 et ARM.

Pour plus de détails sur la compatibilité d'IronPDF, visitez Compatibilité IronPDF.

WkHtmlToPdf

  • Versions .NET : En tant qu'outil en ligne de commande, WkHtmlToPdf lui-même n'a pas de support .NET direct, cependant, les développeurs .NET interagissent généralement avec lui en utilisant un wrapper ou une bibliothèque, comme DinkToPdf.

  • Environnements d'application : WkHtmlToPdf fonctionne sans problème dans plusieurs environnements d'application tels que Windows, Linux et macOS.

  • Langages de programmation : WkHtmlToPdf est largement utilisé via des outils en ligne de commande ou intégré avec des langages de programmation tels que C#, Java, Python, PHP et Node.js.

Installation

Installer IronPDF

Pour utiliser IronPDF, installez-le via le Gestionnaire de Packages NuGet dans Visual Studio :

Install-Package IronPdf

Installation de Wkhtmltopdf

  1. Téléchargez l'installateur :

    • Accédez à la page de téléchargement de WkHtmlToPdf.
    • Sous la section "Windows", téléchargez la dernière version stable de l'installateur (par exemple, fichier .exe).
  2. Exécutez l'installateur :

    • Double-cliquez sur le fichier .exe téléchargé.
    • Suivez les instructions d'installation.
    • Pendant l'installation, vous pouvez choisir d'ajouter WkHtmlToPdf à votre PATH système pour le rendre accessible depuis n'importe quelle invite de commande.
  3. Vérifiez l'installation :
    • Ouvrez l'Invite de Commandes (cmd).
    • Tapez wkhtmltopdf --version pour vérifier s'il est correctement installé. Vous devriez voir le numéro de version affiché à l'écran.

Comment IronPDF et WkHtmlToPdf se comparent-ils en termes de fonctionnalités ?

Lors de la comparaison de IronPDF et WkHtmlToPdf, il est essentiel d'examiner les fonctionnalités que les deux bibliothèques offrent pour la génération et la manipulation de PDF.

Fonctionnalités d'IronPDF :

  • Conversion PDF : IronPDF convertit le HTML en PDF à l'aide d'un moteur Chromium intégré prenant entièrement en charge HTML5, CSS3 (y compris Flexbox et Grid) et JavaScript. Il permet également la conversion à partir d'autres formats tels que DOCX, images, RTF, et bien plus encore.

  • Génération de PDF : Avec IronPDF, vous pouvez générer des PDF à partir d'URLs, de formats d'image, de fichiers ASPX ou de chaînes HTML.

  • Fonctionnalités de sécurité : IronPDF inclut le chiffrement, la protection par mot de passe et des paramètres d'autorisation précis (lecture seule, restriction de copie/collage, contrôle d'impression) en tant qu'opérations de premier ordre dans l'API.

  • Fonctionnalités d'édition PDF : IronPDF peut traiter les documents PDF existants, les modifier et lire les fichiers PDF. Les fonctionnalités d'édition incluent l'ajout d'en-têtes et de pieds de page, l'insertion de texte et d'images sur les pages, l'application de filigranes personnalisés, la gestion des formulaires PDF et la division ou la fusion de fichiers PDF.

Pour plus de détails sur les fonctionnalités d'IronPDF, visitez les Fonctionnalités d'IronPDF.

Fonctionnalités Clés de WkHtmlToPdf C# :

  • Conversion HTML en PDF : Convertit les pages, fichiers, chaînes HTML et contenu CSS en PDF, en conservant la mise en page originale.

  • Options de personnalisation : Prend en charge la taille de page, les marges, en-têtes, pieds de page, etc.

  • Open Source : Gratuit sous licence MIT.

  • Compatibilité multiplateforme : Fonctionne sur Windows, Linux et macOS.

Exemples de code côte à côte

Conversion HTML en PDF

IronPDF :

using IronPdf;

// Disable local disk access or cross-origin requests
Installation.EnableWebSecurity = true;

// Instantiate Renderer
var renderer = new ChromePdfRenderer();

// Create a PDF from an HTML string using C#
var pdf = renderer.RenderHtmlAsPdf("<h1>Hello World</h1>");

// Export to a file or Stream
pdf.SaveAs("output.pdf");

// Advanced Example with HTML Assets
// Load external html assets: Images, CSS and JavaScript.
// An optional BasePath 'C:\\site\\assets\\' is set as the file location to load assets from
var myAdvancedPdf = renderer.RenderHtmlAsPdf("<img src='icons/iron.png'>", @"C:\site\assets\");
myAdvancedPdf.SaveAs("html-with-assets.pdf");
using IronPdf;

// Disable local disk access or cross-origin requests
Installation.EnableWebSecurity = true;

// Instantiate Renderer
var renderer = new ChromePdfRenderer();

// Create a PDF from an HTML string using C#
var pdf = renderer.RenderHtmlAsPdf("<h1>Hello World</h1>");

// Export to a file or Stream
pdf.SaveAs("output.pdf");

// Advanced Example with HTML Assets
// Load external html assets: Images, CSS and JavaScript.
// An optional BasePath 'C:\\site\\assets\\' is set as the file location to load assets from
var myAdvancedPdf = renderer.RenderHtmlAsPdf("<img src='icons/iron.png'>", @"C:\site\assets\");
myAdvancedPdf.SaveAs("html-with-assets.pdf");
Imports IronPdf

' Disable local disk access or cross-origin requests
Installation.EnableWebSecurity = True

' Instantiate Renderer
Dim renderer = New ChromePdfRenderer()

' Create a PDF from an HTML string using C#
Dim pdf = renderer.RenderHtmlAsPdf("<h1>Hello World</h1>")

' Export to a file or Stream
pdf.SaveAs("output.pdf")

' Advanced Example with HTML Assets
' Load external html assets: Images, CSS and JavaScript.
' An optional BasePath 'C:\\site\\assets\\' is set as the file location to load assets from
Dim myAdvancedPdf = renderer.RenderHtmlAsPdf("<img src='icons/iron.png'>", "C:\site\assets\")
myAdvancedPdf.SaveAs("html-with-assets.pdf")
$vbLabelText   $csharpLabel

WkHtmlToPdf (Utilisant DinkToPdf) :

using DinkToPdf;
var converter = new BasicConverter(new PdfTools());
var doc = new HtmlToPdfDocument()
{
    Objects = { new ObjectSettings() { HtmlContent = "<h1>Hello World</h1>" } }
};
byte[] pdf = converter.Convert(doc);
System.IO.File.WriteAllBytes("HtmlToPdf.pdf", pdf);
using DinkToPdf;
var converter = new BasicConverter(new PdfTools());
var doc = new HtmlToPdfDocument()
{
    Objects = { new ObjectSettings() { HtmlContent = "<h1>Hello World</h1>" } }
};
byte[] pdf = converter.Convert(doc);
System.IO.File.WriteAllBytes("HtmlToPdf.pdf", pdf);
Imports DinkToPdf
Private converter = New BasicConverter(New PdfTools())
Private doc = New HtmlToPdfDocument() With {
	.Objects = {
		New ObjectSettings() With {.HtmlContent = "<h1>Hello World</h1>"}
	}
}
Private pdf() As Byte = converter.Convert(doc)
System.IO.File.WriteAllBytes("HtmlToPdf.pdf", pdf)
$vbLabelText   $csharpLabel

WkHtmlToPdf (Utilisant la ligne de commande)

wkhtmltopdf myfile.html myfile.pdf
wkhtmltopdf myfile.html myfile.pdf
SHELL

IronPDF génère des fichiers PDF d'une précision pixel parfaite à partir de contenu HTML en quelques lignes de code. Son moteur Chromium intégré prend en charge les technologies CSS3, Flexbox et Grid modernes, de sorte que le PDF rendu correspond étroitement à la source originale. WkHtmlToPdf est conçu autour de la même tâche principale — la conversion HTML vers PDF — et l'exécute de manière concise, qu'il soit lancé via une bibliothèque d'encapsulation ou en ligne de commande. Les difficultés rencontrées par les équipes concernent généralement les mises en page CSS modernes : le moteur Qt WebKit de WkHtmlToPdf ne prend pas entièrement en charge Flexbox ni Grid, ce qui peut entraîner des résultats d'affichage inattendus sur les designs actuels.

Cryptage des fichiers PDF

IronPDF :

using IronPdf;
using System;

// Open an Encrypted File, alternatively create a new PDF from Html
var pdf = PdfDocument.FromFile("encrypted.pdf", "password");

// Edit file metadata
pdf.MetaData.Author = "Satoshi Nakamoto";
pdf.MetaData.Keywords = "SEO, Friendly";
pdf.MetaData.ModifiedDate = DateTime.Now;

// Edit file security settings
// The following code makes a PDF read-only and will disallow copy & paste and printing
pdf.SecuritySettings.RemovePasswordsAndEncryption();
pdf.SecuritySettings.MakePdfDocumentReadOnly("secret-key");
pdf.SecuritySettings.AllowUserAnnotations = false;
pdf.SecuritySettings.AllowUserCopyPasteContent = false;
pdf.SecuritySettings.AllowUserFormData = false;
pdf.SecuritySettings.AllowUserPrinting = IronPdf.Security.PdfPrintSecurity.FullPrintRights;

// Change or set the document encryption password
pdf.Password = "my-password";
pdf.SaveAs("secured.pdf");
using IronPdf;
using System;

// Open an Encrypted File, alternatively create a new PDF from Html
var pdf = PdfDocument.FromFile("encrypted.pdf", "password");

// Edit file metadata
pdf.MetaData.Author = "Satoshi Nakamoto";
pdf.MetaData.Keywords = "SEO, Friendly";
pdf.MetaData.ModifiedDate = DateTime.Now;

// Edit file security settings
// The following code makes a PDF read-only and will disallow copy & paste and printing
pdf.SecuritySettings.RemovePasswordsAndEncryption();
pdf.SecuritySettings.MakePdfDocumentReadOnly("secret-key");
pdf.SecuritySettings.AllowUserAnnotations = false;
pdf.SecuritySettings.AllowUserCopyPasteContent = false;
pdf.SecuritySettings.AllowUserFormData = false;
pdf.SecuritySettings.AllowUserPrinting = IronPdf.Security.PdfPrintSecurity.FullPrintRights;

// Change or set the document encryption password
pdf.Password = "my-password";
pdf.SaveAs("secured.pdf");
Imports IronPdf
Imports System

' Open an Encrypted File, alternatively create a new PDF from Html
Private pdf = PdfDocument.FromFile("encrypted.pdf", "password")

' Edit file metadata
pdf.MetaData.Author = "Satoshi Nakamoto"
pdf.MetaData.Keywords = "SEO, Friendly"
pdf.MetaData.ModifiedDate = DateTime.Now

' Edit file security settings
' The following code makes a PDF read-only and will disallow copy & paste and printing
pdf.SecuritySettings.RemovePasswordsAndEncryption()
pdf.SecuritySettings.MakePdfDocumentReadOnly("secret-key")
pdf.SecuritySettings.AllowUserAnnotations = False
pdf.SecuritySettings.AllowUserCopyPasteContent = False
pdf.SecuritySettings.AllowUserFormData = False
pdf.SecuritySettings.AllowUserPrinting = IronPdf.Security.PdfPrintSecurity.FullPrintRights

' Change or set the document encryption password
pdf.Password = "my-password"
pdf.SaveAs("secured.pdf")
$vbLabelText   $csharpLabel

WkHtmlToPdf :

Le chiffrement ne fait pas partie du périmètre actuel de WkHtmlToPdf ; Pour y parvenir, il faut une bibliothèque tierce distincte.

IronPDF fournit une API directe pour le chiffrement des fichiers PDF , incluant la protection par mot de passe, l'application du mode lecture seule et un contrôle précis des autorisations. WkHtmlToPdf se concentre sur l'étape de conversion ; les équipes ayant besoin de chiffrement intègrent généralement une seconde bibliothèque pour gérer la sécurité du document une fois le PDF généré.

Rédaction de contenu PDF

IronPDF :

using IronPdf;

PdfDocument pdf = PdfDocument.FromFile("novel.pdf");

// Redact 'are' phrase from all pages
pdf.RedactTextOnAllPages("are");

pdf.SaveAs("redacted.pdf");
using IronPdf;

PdfDocument pdf = PdfDocument.FromFile("novel.pdf");

// Redact 'are' phrase from all pages
pdf.RedactTextOnAllPages("are");

pdf.SaveAs("redacted.pdf");
Imports IronPdf

Private pdf As PdfDocument = PdfDocument.FromFile("novel.pdf")

' Redact 'are' phrase from all pages
pdf.RedactTextOnAllPages("are")

pdf.SaveAs("redacted.pdf")
$vbLabelText   $csharpLabel

WkHtmlToPdf :

La rédaction ne fait pas partie des fonctionnalités de WkHtmlToPdf.

L'API de rédaction d'IronPDF permet de supprimer le contenu spécifié en un seul appel de méthode — trois lignes de code dans l'exemple ci-dessus. Étant donné que WkHtmlToPdf est conçu comme un outil de conversion plutôt que comme un éditeur PDF, la rédaction de contenu ne relève pas de son périmètre d'application. Les équipes ayant besoin de cette fonctionnalité devront ajouter une bibliothèque de manipulation de fichiers PDF distincte.

Signer numériquement des fichiers PDF

IronPDF :

using IronPdf;
using IronPdf.Signing;
using System.Security.Cryptography.X509Certificates;

// Instantiate Renderer
ChromePdfRenderer renderer = new ChromePdfRenderer();
PdfDocument pdf = renderer.RenderHtmlAsPdf("<h1>foo</h1>");

// Create X509Certificate2 object with X509KeyStorageFlags set to Exportable
X509Certificate2 cert = new X509Certificate2("IronSoftware.pfx", "123456", X509KeyStorageFlags.Exportable);

// Create PdfSignature object
var sig = new PdfSignature(cert);

// Sign PDF document
pdf.Sign(sig);
pdf.SaveAs("signed.pdf");
using IronPdf;
using IronPdf.Signing;
using System.Security.Cryptography.X509Certificates;

// Instantiate Renderer
ChromePdfRenderer renderer = new ChromePdfRenderer();
PdfDocument pdf = renderer.RenderHtmlAsPdf("<h1>foo</h1>");

// Create X509Certificate2 object with X509KeyStorageFlags set to Exportable
X509Certificate2 cert = new X509Certificate2("IronSoftware.pfx", "123456", X509KeyStorageFlags.Exportable);

// Create PdfSignature object
var sig = new PdfSignature(cert);

// Sign PDF document
pdf.Sign(sig);
pdf.SaveAs("signed.pdf");
Imports IronPdf
Imports IronPdf.Signing
Imports System.Security.Cryptography.X509Certificates

' Instantiate Renderer
Private renderer As New ChromePdfRenderer()
Private pdf As PdfDocument = renderer.RenderHtmlAsPdf("<h1>foo</h1>")

' Create X509Certificate2 object with X509KeyStorageFlags set to Exportable
Private cert As New X509Certificate2("IronSoftware.pfx", "123456", X509KeyStorageFlags.Exportable)

' Create PdfSignature object
Private sig = New PdfSignature(cert)

' Sign PDF document
pdf.Sign(sig)
pdf.SaveAs("signed.pdf")
$vbLabelText   $csharpLabel

WkHtmlToPdf C# :

WkHtmlToPdf n'est pas conçu pour signer les fichiers PDF ; Une bibliothèque distincte est nécessaire pour cette fonctionnalité.

L'API de signature numérique d'IronPDF accepte les certificats X509/PFX et signe un document en deux appels de méthode, ce qui simplifie les flux de travail nécessitant une signature programmatique à grande échelle. WkHtmlToPdf n'est pas conçu pour gérer la signature PDF de manière autonome ; Toutefois, si vous l'utilisez en parallèle avec une autre bibliothèque, cette dernière peut fournir les fonctionnalités de signature dont vous avez besoin.

Appliquer des Filigranes Personnalisés à votre PDF

IronPDF :

using IronPdf;

// Stamps a Watermark onto a new or existing PDF
var renderer = new ChromePdfRenderer();

var pdf = renderer.RenderUrlAsPdf("https://www.nuget.org/packages/IronPdf");
pdf.ApplyWatermark("<h2 style='color:red'>SAMPLE</h2>", 30, IronPdf.Editing.VerticalAlignment.Middle, IronPdf.Editing.HorizontalAlignment.Center);
pdf.SaveAs(@"C:\Path\To\Watermarked.pdf");
using IronPdf;

// Stamps a Watermark onto a new or existing PDF
var renderer = new ChromePdfRenderer();

var pdf = renderer.RenderUrlAsPdf("https://www.nuget.org/packages/IronPdf");
pdf.ApplyWatermark("<h2 style='color:red'>SAMPLE</h2>", 30, IronPdf.Editing.VerticalAlignment.Middle, IronPdf.Editing.HorizontalAlignment.Center);
pdf.SaveAs(@"C:\Path\To\Watermarked.pdf");
Imports IronPdf

' Stamps a Watermark onto a new or existing PDF
Private renderer = New ChromePdfRenderer()

Private pdf = renderer.RenderUrlAsPdf("https://www.nuget.org/packages/IronPdf")
pdf.ApplyWatermark("<h2 style='color:red'>SAMPLE</h2>", 30, IronPdf.Editing.VerticalAlignment.Middle, IronPdf.Editing.HorizontalAlignment.Center)
pdf.SaveAs("C:\Path\To\Watermarked.pdf")
$vbLabelText   $csharpLabel

WkHtmlToPdf :

Le filigrane ne fait pas partie des fonctionnalités natives de WkHtmlToPdf. Il vous faudrait donc implémenter le style CSS dans le code HTML source avant la conversion, ou utiliser une bibliothèque PDF distincte capable d'appliquer des filigranes aux documents existants.

L'outil de filigrane d'IronPDF utilise une approche basée sur HTML/CSS, offrant aux développeurs un contrôle sur l'opacité, la rotation et la position sans quitter l'API .NET . WkHtmlToPdf peut simuler des filigranes grâce à un style CSS appliqué au code HTML source avant la conversion — une approche qui fonctionne pour les cas les plus simples, mais qui atteint ses limites lorsqu'il s'agit d'ajouter un filigrane à des PDF existants qui n'ont pas été générés à partir de votre propre code HTML.

Estampillage d'Images et de Texte

IronPDF :

using IronPdf;
using IronPdf.Editing;

ChromePdfRenderer renderer = new ChromePdfRenderer();
PdfDocument pdf = renderer.RenderHtmlAsPdf("<h1>Example HTML Document!</h1>");

// Create text stamper
TextStamper textStamper = new TextStamper()
{
    Text = "Text Stamper!",
    FontFamily = "Bungee Spice",
    UseGoogleFont = true,
    FontSize = 30,
    IsBold = true,
    IsItalic = true,
    VerticalAlignment = VerticalAlignment.Top,
};

// Stamp the text stamper
pdf.ApplyStamp(textStamper);
pdf.SaveAs("stampText.pdf");
using IronPdf;
using IronPdf.Editing;

ChromePdfRenderer renderer = new ChromePdfRenderer();
PdfDocument pdf = renderer.RenderHtmlAsPdf("<h1>Example HTML Document!</h1>");

// Create text stamper
TextStamper textStamper = new TextStamper()
{
    Text = "Text Stamper!",
    FontFamily = "Bungee Spice",
    UseGoogleFont = true,
    FontSize = 30,
    IsBold = true,
    IsItalic = true,
    VerticalAlignment = VerticalAlignment.Top,
};

// Stamp the text stamper
pdf.ApplyStamp(textStamper);
pdf.SaveAs("stampText.pdf");
Imports IronPdf
Imports IronPdf.Editing

Private renderer As New ChromePdfRenderer()
Private pdf As PdfDocument = renderer.RenderHtmlAsPdf("<h1>Example HTML Document!</h1>")

' Create text stamper
Private textStamper As New TextStamper() With {
	.Text = "Text Stamper!",
	.FontFamily = "Bungee Spice",
	.UseGoogleFont = True,
	.FontSize = 30,
	.IsBold = True,
	.IsItalic = True,
	.VerticalAlignment = VerticalAlignment.Top
}

' Stamp the text stamper
pdf.ApplyStamp(textStamper)
pdf.SaveAs("stampText.pdf")
$vbLabelText   $csharpLabel
using IronPdf;
using IronPdf.Editing;
using System;

ChromePdfRenderer renderer = new ChromePdfRenderer();
PdfDocument pdf = renderer.RenderHtmlAsPdf("<h1>Example HTML Document!</h1>");

// Create image stamper
ImageStamper imageStamper = new ImageStamper(new Uri("https://ironpdf.com/img/svgs/iron-pdf-logo.svg"))
{
    VerticalAlignment = VerticalAlignment.Top,
};

// Stamp the image stamper
pdf.ApplyStamp(imageStamper, 0);
pdf.SaveAs("stampImage.pdf");
using IronPdf;
using IronPdf.Editing;
using System;

ChromePdfRenderer renderer = new ChromePdfRenderer();
PdfDocument pdf = renderer.RenderHtmlAsPdf("<h1>Example HTML Document!</h1>");

// Create image stamper
ImageStamper imageStamper = new ImageStamper(new Uri("https://ironpdf.com/img/svgs/iron-pdf-logo.svg"))
{
    VerticalAlignment = VerticalAlignment.Top,
};

// Stamp the image stamper
pdf.ApplyStamp(imageStamper, 0);
pdf.SaveAs("stampImage.pdf");
Imports IronPdf
Imports IronPdf.Editing
Imports System

Private renderer As New ChromePdfRenderer()
Private pdf As PdfDocument = renderer.RenderHtmlAsPdf("<h1>Example HTML Document!</h1>")

' Create image stamper
Private imageStamper As New ImageStamper(New Uri("https://ironpdf.com/img/svgs/iron-pdf-logo.svg")) With {.VerticalAlignment = VerticalAlignment.Top}

' Stamp the image stamper
pdf.ApplyStamp(imageStamper, 0)
pdf.SaveAs("stampImage.pdf")
$vbLabelText   $csharpLabel

WkHtmlToPdf C# :

WkHtmlToPdf ne comprend pas d'outils d'estampage intégrés. La solution habituelle consiste à intégrer les tampons souhaités dans le code HTML et CSS source avant la conversion.

IronPDF fournit des classes TextStamper et ImageStamper dédiées pour estampiller du texte et des images sur des pages PDF - y compris la prise en charge de Google Fonts et des contrôles d'alignement précis. WkHtmlToPdf n'intègre pas d'outils d'estampage, mais vous pouvez obtenir un résultat similaire en intégrant directement le contenu estampé dans votre code HTML et CSS source avant la conversion.

Conversion de DOCX en PDF

IronPDF :

using IronPdf;

// Instantiate Renderer
DocxToPdfRenderer renderer = new DocxToPdfRenderer();

// Render from DOCX file
PdfDocument pdf = renderer.RenderDocxAsPdf("Modern-chronological-resume.docx");

// Save the PDF
pdf.SaveAs("pdfFromDocx.pdf");
using IronPdf;

// Instantiate Renderer
DocxToPdfRenderer renderer = new DocxToPdfRenderer();

// Render from DOCX file
PdfDocument pdf = renderer.RenderDocxAsPdf("Modern-chronological-resume.docx");

// Save the PDF
pdf.SaveAs("pdfFromDocx.pdf");
Imports IronPdf

' Instantiate Renderer
Private renderer As New DocxToPdfRenderer()

' Render from DOCX file
Private pdf As PdfDocument = renderer.RenderDocxAsPdf("Modern-chronological-resume.docx")

' Save the PDF
pdf.SaveAs("pdfFromDocx.pdf")
$vbLabelText   $csharpLabel

WkHtmlToPdf C# :

WkHtmlToPdf se concentre exclusivement sur l'entrée HTML, la conversion DOCX nécessite donc des bibliothèques supplémentaires.

IronPDF gère la conversion de DOCX en PDF par le biais de sa classe DocxToPdfRenderer - trois lignes de code dans l'exemple ci-dessus. Étant donné que le processus de rendu de WkHtmlToPdf repose sur une entrée HTML, le format DOCX n'est pas pris en charge. Les équipes ayant besoin de cette fonctionnalité devront intégrer une bibliothèque de conversion distincte en plus de WkHtmlToPdf.

Résumé de la comparaison des exemples de code

Pour découvrir l'ensemble des fonctionnalités d'IronPDF en action, consultez les guides pratiques IronPDF , qui présentent chaque fonctionnalité à l'aide d'exemples de code à copier-coller.

Tarification et Licence : IronPDF vs. WkHtmlToPdf

IronPDF

IronPDF propose différents niveaux et fonctionnalités supplémentaires pour l'achat d'une licence. Les développeurs peuvent également acheter l'[Iron Suite](Iron Suite) qui vous donne accès à tous les produits d'Iron Software au prix de deux. Si vous n'êtes pas prêt à acheter une licence, IronPDF propose un essai gratuit afin que vous puissiez explorer toutes les fonctionnalités qu'elle a à offrir avant de vous engager dans une licence.

  • Licences perpétuelles : Offre un éventail de licences perpétuelles en fonction de la taille de votre équipe, de vos besoins en projet et du nombre de sites. Chaque type de licence est accompagné d'un support par courrier électronique.

  • Licence Lite : Cette licence prend en charge un développeur, un emplacement et un projet.

  • Licence Plus : Supportant trois développeurs, trois emplacements et trois projets, c'est l'étape suivante après la licence Lite. La licence Plus offre un support chat et un support par téléphone en plus de l'assistance par e-mail de base.

  • Licence Professionnelle : Cette licence est adaptée aux équipes plus importantes, supportant dix développeurs, dix emplacements et dix projets. Elle offre les mêmes canaux de support de contact que les niveaux précédents mais offre également un support par partage d'écran.

  • Redistribution sans redevance : La licence d'IronPDF offre également une couverture de redistribution sans redevance moyennant un coût supplémentaire.

  • Support produit ininterrompu : IronPDF offre un accès aux mises à jour continues des produits, mises à jour des fonctionnalités de sécurité et support de leur équipe d'ingénierie.

  • Iron Suite : Vous accédez à tous les produits Iron Software y compris IronPDF, IronOCR, IronWord, IronXL, IronBarcode, IronQR, IronZIP, IronPrint, et IronWebScraper.

WkHtmlToPdf

WkHtmlToPdf est un outil open-source gratuit, sous licence LGPL qui vous permet d'utiliser wkhtmltopdf dans des applications propriétaires tant que vous ne modifiez pas la bibliothèque elle-même.

Au-delà du coût de la licence, le coût total du projet comprend les heures de développement consacrées à la gestion des dépendances binaires natives, à l'assemblage de bibliothèques distinctes pour le chiffrement , la signature et la rédaction, ainsi qu'à la gestion des limitations de la prise en charge CSS3 par le moteur Qt WebKit. Pour les équipes évaluant les coûts sur un cycle de vie de projet pluriannuel, ces coûts d'intégration et de maintenance éclipsent fréquemment la différence entre les licences open source et commerciales.

Documentation et Support : IronPDF vs. WkHtmlToPdf

IronPDF

IronPDF fournit une documentation et une assistance complètes :

  • Documentation complète : Documentation étendue et conviviale couvrant toutes les fonctionnalités.

  • Support 24/5 : Un support actif d'ingénieurs est disponible.

  • Tutoriels vidéo : Des guides vidéo étape par étape sont disponibles sur YouTube.

  • Forum communautaire : Une communauté engagée pour un support supplémentaire.

  • Mises à jour régulières : Mises à jour de produits mensuelles pour assurer les dernières fonctionnalités et correctifs de sécurité.

  • Référence de l'API PDF : Fournit des références API pour vous permettre de tirer le meilleur parti de nos outils.

Pour plus d'informations, consultez la documentation étendue d'IronPDF et visitez la chaîne YouTube de Iron Software.

WkHtmlToPdf

  • GitHub : Le dépôt GitHub de WkHtmlToPdf est un endroit où les utilisateurs peuvent signaler les problèmes qu'ils rencontrent lors de l'utilisation de l'outil.

  • Stack Overflow : Ici, vous pouvez trouver de nombreuses questions et réponses relatives à WkHtmlToPdf et obtenir des conseils de la communauté.

  • Documentation Officielle : La documentation officielle fournit des détails sur l'installation, l'utilisation, les options en ligne de commande et les configurations courantes.

Quelle bibliothèque devriez-vous choisir ?

IronPDF et WkHtmlToPdf permettent tous deux de générer des PDF en C#, mais ils ciblent différents segments du spectre de complexité. IronPDF couvre l'intégralité du cycle de vie des fichiers PDF (conversion, chiffrement, rédaction, signature numérique, conversion de DOCX en PDF, etc.) grâce à un package NuGet unique doté d'un moteur de rendu Chromium activement maintenu. Pour les équipes dont les projets impliquent de multiples opérations PDF, cette approche consolidée réduit le nombre de dépendances à gérer.

WkHtmlToPdf a gagné en popularité grâce à une approche ciblée et simple de la conversion HTML vers PDF, et son coût de licence nul en fait un point d'entrée accessible. Le point d'inflexion pour les équipes se situe généralement lorsque les exigences s'étendent au-delà de la simple conversion pour inclure l'édition, la sécurité ou la conformité — des capacités qui ne relèvent pas du périmètre architectural de WkHtmlToPdf. Compte tenu du statut archivé du projet et du moteur WebKit vieillissant, les équipes dont les besoins augmentent considèrent souvent que c'est le moment idéal pour évaluer une alternative activement maintenue . En définitive, le choix approprié dépend des besoins actuels et futurs de votre projet en matière de PDF.

Vous pouvez essayer la version d'essai gratuite de 30 jours pour découvrir les fonctionnalités disponibles.

Veuillez noterWkHtmlToPdf est une marque déposée de son propriétaire respectif. Ce site n'est pas affilié à, approuvé par, ou parrainé par WkHtmlToPdf. Tous les noms de produits, logos et marques sont la propriété de leurs propriétaires respectifs. Les comparaisons sont à titre informatif uniquement et reflètent les informations publiquement disponibles au moment de l'écriture.

Questions Fréquemment Posées

Comment puis-je convertir HTML en PDF en C# ?

Vous pouvez utiliser la méthode RenderHtmlAsPdf de IronPDF pour convertir des chaînes HTML en PDFs. De plus, vous pouvez convertir des fichiers HTML en PDFs en utilisant RenderHtmlFileAsPdf.

Quelles sont les principales différences entre IronPDF et WkHtmlToPdf ?

IronPDF offre un ensemble complet de fonctionnalités incluant l'extraction de texte, la gestion de formulaires, le cryptage et les signatures numériques, ainsi qu'une compatibilité multiplateforme. WkHtmlToPdf est un outil open-source qui se concentre sur la conversion simple HTML en PDF.

Comment puis-je installer IronPDF dans un projet .NET ?

IronPDF peut être installé en utilisant le gestionnaire de packages NuGet dans Visual Studio en exécutant la commande : Install-Package IronPDF.

Est-il possible de crypter des PDFs avec IronPDF ?

Oui, IronPDF propose des options pour crypter les fichiers PDF, définir des mots de passe et assigner des permissions pour améliorer la sécurité des documents.

IronPDF prend-il en charge le développement multiplateforme?

En effet, IronPDF est compatible avec divers environnements au sein du framework .NET, incluant Windows, Linux, Mac, Docker, Azure et AWS.

IronPDF peut-il convertir des fichiers DOCX en PDF ?

Oui, IronPDF inclut des fonctionnalités pour convertir facilement des fichiers DOCX en PDFs.

Quel type de support est disponible pour les utilisateurs d'IronPDF ?

IronPDF offre une documentation détaillée, un support d'ingénieur 24h/5, des tutoriels vidéo, un forum communautaire et des mises à jour logicielles régulières.

Comment installez-vous WkHtmlToPdf ?

Pour installer WkHtmlToPdf, téléchargez l'exécutable depuis son site officiel, exécutez l'installateur et assurez-vous qu'il est inclus dans le PATH de votre système.

Quelles sont les implications de licence de l'utilisation de WkHtmlToPdf ?

WkHtmlToPdf est distribué sous la licence LGPL, permettant une utilisation gratuite dans les applications open-source et propriétaires.

WkHtmlToPdf propose-t-il un support pour le cryptage de PDF ?

Non, WkHtmlToPdf n'inclut pas de support natif pour le cryptage de PDF. Des bibliothèques tierces supplémentaires sont nécessaires pour les capacités de cryptage.

Kye Stuart
Rédacteur technique

Kye Stuart fusionne la passion du codage et l'habileté rédactionnelle chez Iron Software. Éduqué au Yoobee College en déploiement de logiciels, ils transforment maintenant des concepts technologiques complexes en contenu éducatif clair. Kye valorise l'apprentissage tout au long de la vie et relève de nouveaux dé...

Lire la suite

Équipe de soutien Iron

Nous sommes en ligne 24 heures sur 24, 5 jours sur 7.
Chat
Email
Appelez-moi