Test dans un environnement réel
Test en production sans filigrane.
Fonctionne partout où vous en avez besoin.
Lorsque vous travaillez avec des PDF, vous voudrez utiliser le meilleur outil qui correspond aux besoins de votre projet, n'est-ce pas ? Mais avec autant de bibliothèques PDF différentes disponibles, il peut être difficile de décider laquelle est la meilleure pour vous. Aujourd'hui, nous allons examiner de plus près deux bibliothèques PDF importantes ; IronPDF et NReco.PdfGenerator.
Nous comparerons leurs fonctionnalités, leur compatibilité et leurs performances globales pour vous aider à prendre une décision éclairée sur la bibliothèque qui pourrait vous convenir.
IronPDFest une bibliothèque .NET complète qui excelle dans la conversion de HTML en PDF et propose un ensemble étendu de fonctionnalités pour travailler avec des fichiers PDF. IronPDF prend en charge les normes Web modernes, y compris HTML5, CSS3 et JavaScript, garantissant une génération PDF de haute fidélité. Il est également conçu pour être convivial, offrant une API intuitive qui s'intègre parfaitement avec les applications .NET.
NReco.PdfGenerator for .NET est une bibliothèque puissante axée sur la conversion de HTML en PDF. Il est basé sur l'outil en ligne de commande WkHtmlToPdf et repose sur le moteur de rendu Qt WebKit pour créer des documents PDF à partir de contenu HTML. Cette bibliothèque est réputée pour sa facilité d'utilisation et son intégration rapide dans les projets .NET, nécessitant seulement une seule assemblée .NET qui inclut déjà les binaires WkHtmlToPdf. Cela en fait un choix populaire pour les développeurs ayant besoin de capacités fiables de génération de PDF.
IronPDF se distingue par sa compatibilité multiplateforme étendue. Il prend en charge une large gamme d'environnements au sein du framework .NET, garantissant un fonctionnement fluide sur différentes plateformes. Voici un résumé de la compatibilité de plateforme d'IronPDF :
Versions .NET :
Entièrement écrit en et prend en charge C#, VB.NET et F#
.NET Core(8, 7, 6, 5 et 3.1+)
Systèmes d'exploitation et processeurs : Prend en charge plusieurs systèmes d'exploitation et processeurs différents, y compris Windows, Mac, Linux, x64, x86, ARM
Pour plus de détails sur la compatibilité d'IronPDF, visitezCompatibilité avec IronPDF.
Versions .NET :
Intégration : S'intègre parfaitement avecASP.NETet les applications MVC.
Pour une liste complète des fonctionnalités d'IronPDF, visitez Caractéristiques d'IronPDF.
Maintenant, examinons de plus près certains cas d'utilisation courants lors du travail avec des documents PDF, et comment ces deux bibliothèques les gèrent.
Exemple IronPDF :
using IronPdf;
// Disable local disk access or cross-origin requests
Installation.EnableWebSecurity = true;
// Instantiate Renderer
var renderer = new ChromePdfRenderer();
// Create a PDF from a 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 a 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 a 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")
Exemple de NReco.PdfGenerator :
using system;
using NReco.PdfGenerator;
var htmlContent = String.Format("<body>Hello world: {0}</body>",
DateTime.Now);
var htmlToPdf = new NReco.PdfGenerator.HtmlToPdfConverter();
var pdfBytes = htmlToPdf.GeneratePdf(htmlContent)
using system;
using NReco.PdfGenerator;
var htmlContent = String.Format("<body>Hello world: {0}</body>",
DateTime.Now);
var htmlToPdf = new NReco.PdfGenerator.HtmlToPdfConverter();
var pdfBytes = htmlToPdf.GeneratePdf(htmlContent)
Imports system
Imports NReco.PdfGenerator
Private htmlContent = String.Format("<body>Hello world: {0}</body>", DateTime.Now)
Private htmlToPdf = New NReco.PdfGenerator.HtmlToPdfConverter()
'INSTANT VB TODO TASK: The following line uses invalid syntax:
'var pdfBytes = htmlToPdf.GeneratePdf(htmlContent)
IronPDFfournit un rendu haute fidélité grâce à sa compatibilité avec les normes web modernes. Lors de l'utilisation d'IronPDF pour Conversion de HTML en PDF, vous serez en mesure de créer des PDF parfaits à partir de documents HTML, de pages web et plus encore. NReco.PdfGenerator utilise WkHtmlToPdf, qui offre également un rendu fiable lors de l'utilisation de n'importe quel modèle HTML ou page Web, mais il pourrait ne pas atteindre la précision des capacités de rendu d'IronPDF.
Pour plus d'exemples d'utilisation de IronPDF pour la conversion de HTML en PDF, visitezIronPDF HTML en PDF.
Exemple 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")
Exemple de NReco.PdfGenerator : NReco.PdfGenerator ne prend pas en charge nativement le chiffrement PDF, car l'objectif principal de cette bibliothèque est de gérer la conversion de HTML en PDF.
IronPDF propose un outil simple mais puissant pourcrypter les PDF. Avec IronPDF, vous aurez un contrôle total sur l'ensemble du processus, jusqu'à la configuration des paramètres de sécurité. NReco.PdfGenerator, cependant, manque de fonctionnalités de cryptage natives, donc si vous souhaitez crypter votre fichier PDF après avoir utilisé NReco.PdfGenerator pour le convertir, vous devrez installer d'autres bibliothèques capables de gérer le cryptage PDF.
Pour plus d'exemples de chiffrement, visitez le Comment utiliser IronPDFguide pour ce sujet.
Exemple 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")
Exemple NReco.PdfGenerator : NReco.PdfGenerator ne prend pas en charge la dissimulation de texte de manière native.
En nécessitant seulement quelques lignes de code, IronPDF vous offre une solution concise et facile à utiliser.outil de rédaction. Étant donné sa mise en œuvre à la fois courte et simple, vous pouvez être sûr qu'en utilisant la fonctionnalité de caviardage d'IronPDF, vous pourrez augmenter l'efficacité de votre lieu de travail dès le départ. NReco.PdfGenerator, en revanche, nécessiterait une bibliothèque externe supplémentaire pour gérer le processus de caviardage car il n'a pas de support natif pour le caviardage de PDF.
Pour plus d'exemples de rédaction, visitez le site d'IronPDFGuide pratiquesur ce sujet.
Exemple IronPDF :
using IronPdf;
using IronPdf.Signing;
using System.Security.Cryptography.X509Certificates;
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;
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
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")
Exemple de NReco.PdfGenerator : NReco.PdfGenerator ne prend pas en charge nativement les signatures numériques.
IronPDF'ssignature numériqueLa fonctionnalité vous offre un moyen simple d'automatiser la façon dont vous signez des PDF. Son API simple vous offre un contrôle total sur le processus de signature, tandis que sa facilité d'implémentation signifie moins de travail pour vous si vous signez fréquemment des PDF.
NReco.PdfGenerator, malheureusement, n'offre aucun support pour la signature numérique des PDFs, mais vous pouvez utiliser des bibliothèques tierces telles qu'iTextSharp pour cela.
Pour plus d'exemples de signature, visitez le Comment utiliser IronPDFguide pour ce sujet.
Exemple 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")
Exemple de NReco.PdfGenerator : NReco.PdfGenerator ne prend pas en charge nativement le filigranage.
Connaissez-vous le HTML et le CSS ? Parce que si c'est le cas, vous pouvez profiter de l'utilisation de HTML/CSS par IronPDF dans sonoutil de filigranageavoir un contrôle total sur l'ensemble du processus. Sinon, les aspects intuitifs et faciles à apprendre du contrôle de filigrane vous feront vous sentir comme un professionnel en un rien de temps.
Si vous utilisez NReco.PdfGenerator et souhaitez ajouter un filigrane à vos fichiers PDF fraîchement convertis, vous devrez installer une bibliothèque externe, telle que PDFSharp.
Pour plus d'exemples de filigranes, visitez le Comment utiliser IronPDFguide sur ce sujet.
Exemple IronPDF :
using IronPdf;
using IronPdf.Editing;
using System;
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;
using System;
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
Imports System
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")
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")
Exemple de NReco.PdfGenerator : NReco.PdfGenerator ne prend pas en charge nativement le marquage HTML.
IronPDF vous propose des fonctionnalités robustesoutils de tamponnage de texte et d'image, avec une approche qui ressemble étroitement à HTML et CSS, vous aurez un contrôle total sur le processus de tamponnage. Alors que NReco.PdfGenerator, à nouveau, nécessite une bibliothèque externe telle que iTextSharp ou PDFSharp pour estampiller du texte et des images sur vos documents PDF nouvellement convertis.
Pour plus d'exemples de tamponnage, visitez leComment utiliser IronPDFguide sur ce sujet.
Exemple 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")
Exemple de NReco.PdfGenerator : NReco.PdfGenerator ne prend pas en charge nativement la conversion de DOCX en PDF.
En utilisant IronPDF, vous pouvezconvertir vos fichiers DOCXau format PDF en seulement quelques lignes de code. La mise en œuvre simpliste de cet outil garantit un espace de travail efficace, sans perdre en qualité dans le fichier PDF résultant. Avec NReco.PdfGenerator, vous ne pourrez pas convertir de DOCX en PDF, car le principal objectif de la bibliothèque est la conversion de HTML en PDF. Donc, vous aurez besoin d'une bibliothèque supplémentaire telle qu'Apsose.Words dans votre espace de travail afin de gérer cette conversion.
Pour plus d'exemples de conversion de DOCX en PDF, visitez le Comment utiliser IronPDFguide sur ce sujet.
IronPDFa différents niveaux et fonctionnalités supplémentaires pour l'achat d'une licence. Les développeurs peuvent également acheterIronSuitece 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 unessai gratuitqui dure 30 jours.
IronSuite: Pour 1 498 $, vous avez accès à tous les produits Iron Software, y compris IronPDF, IronOCR, IronWord, IronXL, IronBarcode, IronQR, IronZIP, IronPrint, et IronWebScraper.
IronPDF excelle dans la fourniture d'une documentation et d'un support étendus :
Mises à jour régulières : Mises à jour mensuelles du produit pour garantir les dernières fonctionnalités et correctifs de sécurité.
Pour plus d'informations, consultez la documentation complète d'IronPDF.la documentation, et visitez leChaîne YouTube Iron Software.
IronPDF et NReco.PdfGenerator sont tous deux de solides prétendants pour tous vos besoins de conversion HTML en PDF, mais si vous avez besoin d'un outil doté d'un ensemble riche de fonctionnalités intégrées au-delà de la simple conversion HTML en PDF, alors IronPDF est fait pour vous.
Avec un ensemble de fonctionnalités complet, une courbe d'apprentissage facile et un support étendu pour les normes web modernes et la compatibilité multiplateforme, IronPDF sera un ajout puissant à votre espace de travail. NReco.PdfGenerator, bien qu'il soit fiable pour la conversion basique de HTML en PDF, manque de nombreuses fonctionnalités avancées offertes par IronPDF.
Vous pouvez essayer le essai gratuit de 30 jours pour découvrir leurs fonctionnalités disponibles.
9 produits de l'API .NET pour vos documents de bureau