Test dans un environnement réel
Test en production sans filigrane.
Fonctionne partout où vous en avez besoin.
Choisir la bonne bibliothèque PDF qui convient le mieux à vos besoins peut être une tâche ardue avec le nombre croissant d'outils sur Internet pour travailler avec les PDF. (Format de document portable). Alors aujourd'hui, permettez-nous de vous aider en examinant de plus près deux outils PDF différents, IronPDF et QuestPDF.
IronPDF est une bibliothèque .NET complète connue pour sa polyvalence dans la création, l'édition et le traitement des documents PDF. Avec une large gamme de fonctionnalités, y compris la conversion HTML en PDF, la sécurité des documents, les formulaires interactifs, et bien plus encore, IronPDF sera un ajout inestimable à la boîte à outils de votre développeur.
QuestPDF est une bibliothèque open-source .NET axée sur la fourniture d'une approche facile à utiliser, basée uniquement sur le code, pour la génération de PDF. QuestPDF est idéal si vous préférez un flux de travail simple, rationalisé et centré sur le code, sans avoir besoin de langages de script ou de formats propriétaires.
IronPDF prend en charge une large gamme de plateformes, garantissant ainsi que vous pouvez travailler dans votre environnement préféré. Voici un aperçu de sa compatibilité :
Versions .NET :
(C#, VB.NET, 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 d'informations, visitez IronPDF.
QuestPDF offre une forte compatibilité multiplateforme, ce qui signifie que, quel que soit le système sur lequel vous travaillez, vous pourrez très probablement intégrer QuestPDF dans votre environnement de travail.
Versions .NET :
.NET Core (3.1+)
Systèmes : Fonctionne sur divers systèmes d'exploitation et environnements cloud tels que Windows, Linux, macOS, Azure et AWS.
IronPDF et QuestPDF offrent des ensembles de fonctionnalités distincts adaptés à différents besoins des utilisateurs, donc choisir la bibliothèque qui vous conviendra le mieux dépend de ce que vous prévoyez de faire avec les PDF sur lesquels vous travaillez. Voici une comparaison de leurs fonctionnalités principales :
Fonctionnalités de sécurité : Avec IronPDF, vous pouvez toujours être assuré que tous les fichiers PDF sensibles sont sécurisés grâce à ses fonctionnalités de sécurité. Utilisez IronPDF pour crypter vos fichiers PDF, définir des mots de passe et définir des permissions pour vos fichiers PDF.
Fonctionnalités d'édition de PDF : Avec IronPDF, vous pouvez modifier des fichiers PDF en toute simplicité. IronPDF offre des fonctionnalités d'édition telles que l'ajout d'en-têtes et de pieds de page, l'estampillage de texte et d'images sur les pages PDF, l'ajout de filigranes personnalisés au PDF, le travail avec des formulaires PDF, et la division ou la fusion de fichiers PDF.
Pour une liste plus détaillée des fonctionnalités qu'IronPDF a à offrir, visitez ironpdf.com.
Capacité de Rechargement à Chaud : Vous pourrez avoir un aperçu en temps réel du document sans recompilation du code.
Avant de choisir quelle bibliothèque PDF vous convient le mieux, examinons quelques cas d'utilisation courants pour différents usages que vous pourriez avoir pour une bibliothèque PDF, en comparant comment IronPDF et QuestPDF gèrent ces tâches.
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>");
pdf.SaveAs("output.pdf");
// Advanced Example with HTML Assets
// Load external html assets: images, CSS and JavaScript.
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>");
pdf.SaveAs("output.pdf");
// Advanced Example with HTML Assets
// Load external html assets: images, CSS and JavaScript.
var myAdvancedPdf = renderer.RenderHtmlAsPdf("<img src='icons/iron.png'>", @"C:\site\assets\");
myAdvancedPdf.SaveAs("html-with-assets.pdf");
IRON VB CONVERTER ERROR developers@ironsoftware.com
QuestPDF :
QuestPDF ne prend pas en charge nativement la conversion de HTML en PDF, car il est plutôt conçu pour créer des PDF de manière programmatique, plutôt que de convertir d'autres fichiers au format PDF.
Donc, si vous cherchez à convertir du contenu HTML en document PDF, alors IronPDF serait l'outil qu'il vous faut. Avec son support intégré, IronPDF vous offre un outil de conversion HTML en PDF simple et efficace.
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;
//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;
//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");
IRON VB CONVERTER ERROR developers@ironsoftware.com
QuestPDF :
Sans prise en charge intégrée du chiffrement PDF, vous vous tournerez vers des bibliothèques externes si vous souhaitez chiffrer vos fichiers PDF. Cependant, QuestPDF peut être utilisé pour modifier les métadonnées du PDF.
Bien que cela ne fasse pas partie de la vie quotidienne de tout le monde, si vous avez besoin de chiffrer régulièrement des documents ou de modifier les paramètres de sécurité des documents, alors avoir un outil avec un support intégré pour cette tâche rendra votre vie beaucoup plus facile. L'outil de chiffrement intuitif et facile à apprendre d'IronPDF aidera à rationaliser votre espace de travail. Alors que des outils moins chers ou gratuits comme QuestPDFs peuvent ne pas disposer de la même gamme étendue d'outils.
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");
IRON VB CONVERTER ERROR developers@ironsoftware.com
QuestPDF :
QuestPDF ne prend pas en charge directement l'occultation, donc si vous souhaitez occulter du contenu en utilisant QuestPDF, vous devrez utiliser une bibliothèque supplémentaire telle que iTextSharp.
IronPDF rendra l'occultation de votre contenu PDF facile, avec son outil d'occultation concis mais efficace capable d'occulter du contenu avec seulement quelques lignes de code. QuestPDF, en revanche, ne peut pas gérer les tâches de rédaction par lui-même et nécessite des bibliothèques supplémentaires qui ont des capacités de rédaction.
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");
IRON VB CONVERTER ERROR developers@ironsoftware.com
QuestPDF :
Vous ne pouvez pas utiliser QuestPDF pour signer numériquement des PDF. Au lieu de cela, vous pourriez créer un PDF avec QuestPDF, puis utiliser une bibliothèque externe pour signer numériquement ce PDF.
Si vous souhaitez gérer l'application de signatures numériques à vos fichiers PDF de manière efficace, alors IronPDF est le choix évident ici, il gère la signature numérique des fichiers PDF avec facilité. Vous aurez un contrôle total sur le processus grâce à son API puissante et facile à utiliser.
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");
IRON VB CONVERTER ERROR developers@ironsoftware.com
QuestPDF :
QuestPDF ne peut pas être utilisé pour ajouter des filigranes à vos fichiers PDF, en raison de la nature simpliste de cette bibliothèque.
Si vous êtes familier avec HTML et CSS, alors vous trouverez l'outil de filigrane d'IronPDF encore plus facile à utiliser qu'il n'y paraît déjà, grâce à l'utilisation de HTML et CSS pour le style et le placement du filigrane. Avec IronPDF, vous pourrez ajouter des filigranes personnalisés à tout fichier PDF sur lequel vous travaillez de manière programmatique. Cependant, si vous travaillez avec QuestPDF, vous constaterez qu'il manque dans ce domaine, sans outil natif intégré pour l'application de filigrane.
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");
// 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;
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");
// 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");
IRON VB CONVERTER ERROR developers@ironsoftware.com
QuestPDF :
using QuestPDF.Fluent;
using QuestPDF.Infrastructure;
using QuestPDF.Helpers;
Document.Create(container =>
{
container.Page(page =>
{
page.Size(PageSizes.A4);
page.Margin(2, Unit.Centimetre);
page.PageColor(Colors.White);
page.DefaultTextStyle(x => x.FontSize(12));
// Adding Header and Footer for context
page.Header()
.Text("Header Text")
.FontSize(20)
.Bold()
.AlignCenter();
page.Footer()
.Text("Footer Text")
.FontSize(12)
.AlignCenter();
// Adding main content and stamps
page.Content()
.Canvas(canvas =>
{
// Main content
canvas.DrawText("This is the main content of the page.", x =>
{
x.Translate(50, 50);
x.FontSize(12);
});
// Stamped text
canvas.DrawText("Stamped Text", x =>
{
x.Translate(200, 200); // Position the text
x.FontSize(30);
x.Bold();
x.FontColor(Colors.Red);
});
// Stamped image
canvas.DrawImage("path/to/image.png", x =>
{
x.Translate(200, 300); // Position the image
x.Width(100); // Set the width of the image
});
});
});
}).GeneratePdf("output.pdf");
using QuestPDF.Fluent;
using QuestPDF.Infrastructure;
using QuestPDF.Helpers;
Document.Create(container =>
{
container.Page(page =>
{
page.Size(PageSizes.A4);
page.Margin(2, Unit.Centimetre);
page.PageColor(Colors.White);
page.DefaultTextStyle(x => x.FontSize(12));
// Adding Header and Footer for context
page.Header()
.Text("Header Text")
.FontSize(20)
.Bold()
.AlignCenter();
page.Footer()
.Text("Footer Text")
.FontSize(12)
.AlignCenter();
// Adding main content and stamps
page.Content()
.Canvas(canvas =>
{
// Main content
canvas.DrawText("This is the main content of the page.", x =>
{
x.Translate(50, 50);
x.FontSize(12);
});
// Stamped text
canvas.DrawText("Stamped Text", x =>
{
x.Translate(200, 200); // Position the text
x.FontSize(30);
x.Bold();
x.FontColor(Colors.Red);
});
// Stamped image
canvas.DrawImage("path/to/image.png", x =>
{
x.Translate(200, 300); // Position the image
x.Width(100); // Set the width of the image
});
});
});
}).GeneratePdf("output.pdf");
Imports QuestPDF.Fluent
Imports QuestPDF.Infrastructure
Imports QuestPDF.Helpers
Document.Create(Sub(container)
container.Page(Sub(page)
page.Size(PageSizes.A4)
page.Margin(2, Unit.Centimetre)
page.PageColor(Colors.White)
page.DefaultTextStyle(Function(x) x.FontSize(12))
' Adding Header and Footer for context
page.Header().Text("Header Text").FontSize(20).Bold().AlignCenter()
page.Footer().Text("Footer Text").FontSize(12).AlignCenter()
' Adding main content and stamps
page.Content().Canvas(Sub(canvas)
' Main content
canvas.DrawText("This is the main content of the page.", Sub(x)
x.Translate(50, 50)
x.FontSize(12)
End Sub)
' Stamped text
canvas.DrawText("Stamped Text", Sub(x)
x.Translate(200, 200) ' Position the text
x.FontSize(30)
x.Bold()
x.FontColor(Colors.Red)
End Sub)
' Stamped image
canvas.DrawImage("path/to/image.png", Sub(x)
x.Translate(200, 300) ' Position the image
x.Width(100) ' Set the width of the image
End Sub)
End Sub)
End Sub)
End Sub).GeneratePdf("output.pdf")
Bien que IronPDF et QuestPDF prennent tous deux en charge l'ajout de texte et d'images sur vos pages PDF, comme vous pouvez le voir dans les exemples ci-dessus, IronPDF offre une méthode plus concise et facile à utiliser pour effectuer cette tâche. Avec IronPDF, vous pourrez obtenir le résultat final avec moins de travail que ce que QuestPDF peut nécessiter. QuestPDF adopte une approche plus longue et plus manuelle pour cette tâche.
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");
IRON VB CONVERTER ERROR developers@ironsoftware.com
QuestPDF :
QuestPDF ne prend pas en charge la conversion directe de DOCX en PDF. Si vous souhaitez convertir un fichier DOCX en PDF en utilisant QuestPDF, vous devrez installer une bibliothèque supplémentaire comme Aspose.Words ou Syncfusion.
IronPDF est un champion toutes catégories lorsqu'il s'agit de gérer la conversion de fichiers, avec la capacité intégrée de convertir de nombreux types de documents en PDF, y compris DOCX, comme on peut le voir ici. Alors que, QuestPDF a encore besoin d'une bibliothèque supplémentaire pour effectuer cette tâche.
IronPDF a différents niveaux et fonctionnalités supplémentaires pour l'achat d'une licence. Les développeurs peuvent également acheter IronSuite ce qui vous donne accès à tous les produits d'IronSoftware au prix de deux. Si vous n'êtes pas prêt à acheter une licence, IronPDF propose un essai gratuit qui dure 30 jours.
Assistance produit ininterrompue : IronPDF offre un accès aux mises à jour continues du produit, aux améliorations des fonctionnalités de sécurité et au support de leur équipe d'ingénieurs pour 999 $/an ou un achat unique de 1 999 $ pour une couverture de 5 ans.
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.
Professionnel : À 699 $, vous pouvez acheter la licence professionnelle qui couvre des équipes allant jusqu'à 10 développeurs travaillant sur des projets utilisant QuestPDF.
IronPDF excelle dans la fourniture d'une documentation et d'un support étendus :
Forum Communautaire : Une communauté engagée pour un support supplémentaire.
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 le Chaîne YouTube IronSoftware.
Communauté : Étant donné que QuestPDF est un projet open-source, il dépend souvent de la communauté pour être promu et pour trouver des bugs. Cela signifie qu'il encourage une communauté active et solidaire de développeurs qui utilisent QuestPDF.
Vidéos YouTube : QuestPDF a une communauté YouTube positive et publie des vidéos sur leur chaîne YouTube qui aident les développeurs à apprendre à utiliser différents aspects de la bibliothèque.
QuestPDF repose sur les contributions de la communauté pour la documentation et le support, ce qui pourrait ne pas être aussi vaste ou structuré que les offres de IronPDF.
IronPDF et QuestPDF offrent tous deux des outils précieux pour la génération de PDF en .NET, répondant à différents besoins de développement. Donc, choisir celui qui vous convient le mieux dépend vraiment de vos besoins et de votre budget. QuestPDF, étant open-source et simple à utiliser, convient aux développeurs recherchant une solution légère centrée sur le code. Si vous n'avez pas besoin de toutes les fonctionnalités supplémentaires qu'IronPDF a à offrir et que vous voulez simplement une bibliothèque PDF gratuite et simple, alors QuestPDF pourrait être le bon choix pour vous.
IronPDF se distingue par son ensemble de fonctionnalités complet, sa documentation exhaustive et son support robuste, en faisant un choix idéal pour les applications de niveau entreprise. Avec IronPDF dans la boîte à outils de votre développeur, aucune tâche liée aux PDF n'est trop importante et il y a moins de chances de devoir installer des bibliothèques supplémentaires pour gérer des tâches PDF plus complexes.
9 produits de l'API .NET pour vos documents de bureau