COMPARAISON DES PRODUITS

Découvrez les meilleures alternatives pour le filigrane QuestPDF dans .NET

Jordi Bardia
Jordi Bardia
mars 27, 2025
Partager:

Introduction

Les filigranes servent d'élément essentiel dans les documents PDF, fournissant une indication visuelle de propriété, d'authenticité ou de confidentialité. Ils peuvent dissuader l'utilisation non autorisée et aider à protéger la propriété intellectuelle, ce qui les rend cruciaux pour les entreprises et les particuliers. Dans cet article, nous comparerons deux bibliothèques puissantes — IronPDF et QuestPDF — en nous concentrant sur leurs capacités d'ajout de filigranes aux fichiers PDF en C#.

Présentation d'IronPDF

Image cassée Ajouter depuis Pixabay, sélectionner depuis vos fichiers ou glisser-déposer une image ici.

Caractéristiques principales

IronPDF est une bibliothèque PDF robuste qui permet aux développeurs de créer, modifier et manipuler des documents PDF de manière fluide. Les fonctionnalités clés liées au filigrane incluent :

  • Filigrane flexible : Prend en charge les filigranes de texte et d'image, permettant une personnalisation en termes de police, taille, couleur et transparence.
  • Intégration facile : Compatible avec les applications .NET, facilitant son implémentation dans des projets existants.
  • Options de mise en forme riches : Offre de vastes options de style pour les filigranes, améliorant l'attrait visuel de vos documents.
  • Outils de conversion : Convertissez HTML, URL, images, et plus encore en formats PDF.

Installation et configuration

Pour commencer avec IronPDF, suivez ces étapes :

  1. Installez le package NuGet IronPDF en exécutant la commande suivante dans votre console du gestionnaire de packages :
Install-Package IronPdf
Install-Package IronPdf
'INSTANT VB TODO TASK: The following line uses invalid syntax:
'Install-Package IronPdf
$vbLabelText   $csharpLabel
  1. Ajoutez les espaces de noms nécessaires dans votre fichier C# :
using IronPdf;
using IronPdf;
Imports IronPdf
$vbLabelText   $csharpLabel

Ajout de filigranes à un document PDF avec IronPDF

IronPDF utilise une chaîne HTML et un style CSS pour ajouter des filigranes entièrement personnalisables à vos documents PDF. L'outil de filigrane peut prendre n'importe quelle chaîne HTML, même si elle contient des éléments tels que des images et des styles CSS, et l'appliquer au fichier PDF en tant que filigrane.

using IronPdf;
class Program
{
    static void Main()
    {
    PdfDocument pdf = PdfDocument.FromFile("existing.pdf");
        string watermark = "<img src='https://ironsoftware.com/img/products/ironpdf-logo-text-dotnet.svg'><h1 style='color:red'>CONFIDENTIAL</H1>";
        pdf.ApplyWatermark(watermark, rotation: 45, opacity: 80);               
    pdf.SaveAs("watermarked.pdf");
    }
}
using IronPdf;
class Program
{
    static void Main()
    {
    PdfDocument pdf = PdfDocument.FromFile("existing.pdf");
        string watermark = "<img src='https://ironsoftware.com/img/products/ironpdf-logo-text-dotnet.svg'><h1 style='color:red'>CONFIDENTIAL</H1>";
        pdf.ApplyWatermark(watermark, rotation: 45, opacity: 80);               
    pdf.SaveAs("watermarked.pdf");
    }
}
Imports IronPdf
Friend Class Program
	Shared Sub Main()
	Dim pdf As PdfDocument = PdfDocument.FromFile("existing.pdf")
		Dim watermark As String = "<img src='https://ironsoftware.com/img/products/ironpdf-logo-text-dotnet.svg'><h1 style='color:red'>CONFIDENTIAL</H1>"
		pdf.ApplyWatermark(watermark, rotation:= 45, opacity:= 80)
	pdf.SaveAs("watermarked.pdf")
	End Sub
End Class
$vbLabelText   $csharpLabel

Fichier PDF de sortie

Image cassée Ajouter depuis Pixabay, sélectionner depuis vos fichiers ou glisser-déposer une image ici.

Comme vous pouvez le voir, nous avons créé une nouvelle variable de type chaîne contenant notre contenu de filigrane. Ceci est composé d'une chaîne HTML avec un en-tête et une image. Lorsque nous utilisons la méthode ApplyWatermark, nous pouvons définir une rotation et une opacité personnalisées.

Si vous souhaitez voir des exemples plus avancés et d'autres fonctionnalités qu'IronPDF a à offrir, assurez-vous de consulter les Guides pratiques !

Vue d'ensemble de QuestPDF

Image cassée Ajouter depuis Pixabay, sélectionner depuis vos fichiers ou glisser-déposer une image ici.

Caractéristiques principales

QuestPDF est une bibliothèque PDF moderne qui met l'accent sur la facilité d'utilisation et un design convivial pour les développeurs. Les fonctionnalités clés liées au filigrane incluent :

  • API déclarative : Utilise une API fluente qui permet aux développeurs de définir des filigranes de manière claire et intuitive.
  • Haute personnalisabilité : Prend en charge divers types de filigranes, y compris le texte, les images et les formes, avec de nombreuses options de personnalisation.
  • Accent sur les performances : Optimisé pour la rapidité et l'efficacité, ce qui le rend adapté à la génération de PDF en grande quantité.

Installation et configuration

Pour installer QuestPDF, suivez ces étapes :

  1. Installez le paquet NuGet QuestPDF en utilisant la commande suivante :
Install-Package QuestPDF
Install-Package QuestPDF
'INSTANT VB TODO TASK: The following line uses invalid syntax:
'Install-Package QuestPDF
$vbLabelText   $csharpLabel
  1. Incluez l'espace de noms nécessaire dans votre fichier C# :
using QuestPDF;
using QuestPDF;
Imports QuestPDF
$vbLabelText   $csharpLabel

Ajout de filigranes avec QuestPDF

QuestPDF adopte une approche différente pour appliquer des filigranes aux fichiers PDF. Avec QuestPDF, cela se fait via des emplacements de filigrane (à l'arrière-plan et au premier plan) qui sont utilisés pour ajouter du contenu de filigrane à une page spécifique ou à toutes les pages du PDF.

using QuestPDF.Fluent;
using QuestPDF.Helpers;
using QuestPDF.Infrastructure;
public class WatermarkExample
{
    public static void Main()
    {
        QuestPDF.Settings.License = LicenseType.Community;
        Document.Create(container =>
        {
            container.Page(page =>
            {
                page.Margin(50);
                // Add a watermark
                page.Foreground().Element(watermark =>
                {
                    watermark.Text("DRAFT")
                        .FontSize(40)
                        .FontColor(Colors.Red.Medium)
                        .AlignLeft();
                });
                // Main content of the page
                page.Content().Element(ComposeContent);
            });
        })
        .GeneratePdf("watermarked_document.pdf");
    }
    private static IContainer ComposeContent(IContainer container)
    {
        // No need to return the container here; you can just define the layout.
        container.Column(column =>
        {
            column.Spacing(10);
            column.Item().Text("This is the main content of the PDF.");
            column.Item().Text("Add more content as needed.");
        });
        return container; // Return the container to maintain method signature.
    }
}
using QuestPDF.Fluent;
using QuestPDF.Helpers;
using QuestPDF.Infrastructure;
public class WatermarkExample
{
    public static void Main()
    {
        QuestPDF.Settings.License = LicenseType.Community;
        Document.Create(container =>
        {
            container.Page(page =>
            {
                page.Margin(50);
                // Add a watermark
                page.Foreground().Element(watermark =>
                {
                    watermark.Text("DRAFT")
                        .FontSize(40)
                        .FontColor(Colors.Red.Medium)
                        .AlignLeft();
                });
                // Main content of the page
                page.Content().Element(ComposeContent);
            });
        })
        .GeneratePdf("watermarked_document.pdf");
    }
    private static IContainer ComposeContent(IContainer container)
    {
        // No need to return the container here; you can just define the layout.
        container.Column(column =>
        {
            column.Spacing(10);
            column.Item().Text("This is the main content of the PDF.");
            column.Item().Text("Add more content as needed.");
        });
        return container; // Return the container to maintain method signature.
    }
}
Imports QuestPDF.Fluent
Imports QuestPDF.Helpers
Imports QuestPDF.Infrastructure
Public Class WatermarkExample
	Public Shared Sub Main()
		QuestPDF.Settings.License = LicenseType.Community
		Document.Create(Sub(container)
			container.Page(Sub(page)
				page.Margin(50)
				' Add a watermark
				page.Foreground().Element(Sub(watermark)
					watermark.Text("DRAFT").FontSize(40).FontColor(Colors.Red.Medium).AlignLeft()
				End Sub)
				' Main content of the page
				page.Content().Element(AddressOf ComposeContent)
			End Sub)
		End Sub).GeneratePdf("watermarked_document.pdf")
	End Sub
	Private Shared Function ComposeContent(ByVal container As IContainer) As IContainer
		' No need to return the container here; you can just define the layout.
		container.Column(Sub(column)
			column.Spacing(10)
			column.Item().Text("This is the main content of the PDF.")
			column.Item().Text("Add more content as needed.")
		End Sub)
		Return container ' Return the container to maintain method signature.
	End Function
End Class
$vbLabelText   $csharpLabel

Sortie d'un document PDF

Image cassée Ajouter depuis Pixabay, sélectionner depuis vos fichiers ou glisser-déposer une image ici.

Dans la méthode Main, nous commençons par créer un document avec une page qui a une marge de 50 unités. Nous créons ensuite le filigrane que nous voulons utiliser, qui est le texte simple "DRAFT" en rouge, stylé avec une taille de police de 40 et aligné à gauche. Cette approche pour appliquer des filigranes aux documents PDF est plus rigide et complexe à configurer par rapport à l'approche simplifiée d'IronPDF. Avec QuestPDF, vous pouvez avoir moins de contrôle sur l'apparence et l'emplacement du filigrane.

Comparaison des capacités de filigrane

Facilité d'utilisation

IronPDF offre une approche simplifiée avec sa documentation riche et ses exemples, la rendant accessible aux débutants. QuestPDF, avec son API déclarative, simplifie encore le processus en permettant un code concis, ce qui peut améliorer la productivité.

Options de personnalisation

Les deux bibliothèques offrent une personnalisation étendue pour les filigranes. IronPDF permet une personnalisation détaillée des textes et des images, tandis que QuestPDF offre un moyen plus flexible d'agencer les éléments et prend en charge des conceptions complexes, ce qui le rend adapté aux applications créatives.

Performance

En termes de performance, les deux bibliothèques fonctionnent bien, mais QuestPDF peut avoir l'avantage en termes de vitesse grâce à son design efficace. Il est conseillé de tester les bibliothèques dans des scénarios réels pour déterminer celle qui convient le mieux à votre cas d'utilisation spécifique.

Licences et prix

Options de licence d'IronPDF

IronPDF fonctionne sur un modèle de licence commerciale disponible.

Options de licence QuestPDF

QuestPDF offre une licence open-source avec la possibilité d'un support commercial. Cela en fait un choix économique pour les développeurs recherchant une fonctionnalité robuste sans un engagement financier significatif.

Conclusion

![Découvrez les meilleures alternatives pour le filigranage QuestPDF en .NET : Figure 5](/static-assets/pdf/blog/questpdf-add-watermark to-pdf-alternatives/questpdf-add-watermark to-pdf-alternatives-5.webp)

Tant IronPDF que QuestPDF sont des bibliothèques puissantes pour ajouter des filigranes aux PDFs en C#. IronPDF excelle dans ses options de personnalisation détaillées et son approche conviviale, le rendant idéal pour les utilisateurs qui nécessitent un formatage spécifique. QuestPDF, en revanche, se distingue par la conception moderne de son API et son efficacité en termes de performance, séduisant les développeurs à la recherche d'une solution rapide et intuitive.

Pour les scénarios nécessitant une personnalisation approfondie, IronPDF peut être le choix privilégié. À l'inverse, QuestPDF est bien adapté aux projets qui privilégient la rapidité et la facilité d'utilisation.

🚀Essayez IronPDF par vous-même en téléchargeant la version d'essai gratuite et découvrez comment elle peut propulser vos projets PDF en C# à un niveau supérieur dès aujourd'hui !

Jordi Bardia
Ingénieur logiciel
Jordi maîtrise parfaitement Python, C# et C++. Lorsqu'il ne met pas à profit ses compétences chez Iron Software, il se consacre à la programmation de jeux. Partageant des responsabilités en matière de tests de produits, de développement de produits et de recherche, Jordi apporte une valeur ajoutée considérable à l'amélioration continue des produits. Cette expérience variée le stimule et l'engage, et il dit que c'est l'un des aspects qu'il préfère dans son travail chez Iron Software. Jordi a grandi à Miami, en Floride, et a étudié l'informatique et les statistiques à l'université de Floride.
SUIVANT >
Explorez les meilleures alternatives pour ajouter un filigrane à un PDF avec PDFsharp