Comment ajouter des filigranes d'image aux fichiers PDF avec C# et VB.NET
Tags: csharp, pdf, watermark, image
Published: 2023-08-11 07:51:19

Dans le monde numérique d'aujourd'hui, la protection et la personnalisation des documents revêtent une importance capitale. Ajouter des filigranes d'image aux fichiers PDF est un moyen pratique de renforcer la sécurité et les efforts de branding. Que vous souhaitiez marquer le document comme confidentiel, indiquer la propriété ou renforcer l'identité de votre marque, l'ajout de filigranes peut être un outil précieux. Dans cet article, nous explorerons comment **ajouter efficacement des filigranes d'image aux fichiers PDF en utilisant C# et VB.NET**.

## Installer la bibliothèque requise
Il existe de nombreuses bibliothèques .NET qui vous permettent d'ajouter des filigranes d'image aux fichiers PDF de manière programmative. L'une de ces bibliothèques est [Free Spire.PDF for .NET](https://www.e-iceblue.com/Introduce/free-pdf-component.html).

Avant de commencer, vous devrez importer le fichier DLL de la bibliothèque dans votre application en tant que référence. Vous pouvez le faire en installant la bibliothèque via [NuGet](https://www.nuget.org/packages/FreeSpire.PDF/) en suivant ces étapes :

1. Ouvrez la **Package Manager Console**.
2. Exécutez cette commande : **Install-Package FreeSpire.PDF**

## Ajouter un filigrane d'image à un PDF avec C# et VB.NET
L'exemple de code suivant montre comment ajouter un filigrane d'image à un fichier PDF à l'aide de C# et de la bibliothèque Free Spire.PDF for .NET :
```csharp
using Spire.Pdf;
using System.Drawing;

namespace AddImageWatermark
{
    class Program
    {
        static void Main(string[] args)
        {
            // Crée un objet PdfDocument
            PdfDocument document = new PdfDocument();

            // Charge un document PDF d'exemple
            document.LoadFromFile(@"C:\Users\Administrator\Desktop\sample.pdf");

            // Charge une image
            Image image = Image.FromFile(@"C:\Users\Administrator\Desktop\logo.png");

            // Obtient la largeur et la hauteur de l'image
            int imgWidth = image.Width;
            int imgHeight = image.Height;
         
            // Parcourt les pages
            for (int i = 0; i < document.Pages.Count; i++)
            {
                // Obtient la largeur et la hauteur de la page
                float pageWidth = document.Pages[i].ActualSize.Width;
                float pageHeight = document.Pages[i].ActualSize.Height;

                // Définit l'opacité du fond
                document.Pages[i].BackgroudOpacity = 0.3f;

                // Définit l'image de fond de la page actuelle
                document.Pages[i].BackgroundImage = image;

                // Positionne l'image de fond au centre de la page
                Rectangle rect = new Rectangle((int)(pageWidth - imgWidth) / 2, (int)(pageHeight - imgHeight) / 2, imgWidth, imgHeight);
                document.Pages[i].BackgroundRegion = rect;
            }

            // Enregistre le document dans un fichier
            document.SaveToFile("AddImageWatermark.pdf");
            document.Close();
        }
    }
}
```
L'exemple de code suivant montre comment ajouter un filigrane d'image à un fichier PDF en utilisant VB.NET et la bibliothèque Free Spire.PDF for .NET :
```vb
Imports Spire.Pdf
Imports System.Drawing
 
Namespace AddImageWatermark
    Class Program
        Shared Sub Main(ByVal args() As String)
            ' Crée un objet PdfDocument
            Dim document As PdfDocument = New PdfDocument()

            ' Charge un document PDF d'exemple
            document.LoadFromFile("C:\Users\Administrator\Desktop\sample.pdf")

            ' Charge une image
            Dim image As Image = Image.FromFile("C:\Users\Administrator\Desktop\logo.png")

            ' Obtient la largeur et la hauteur de l'image
            Dim imgWidth As Integer = image.Width
            Dim imgHeight As Integer = image.Height

            ' Parcourt les pages
            For i = 0 To document.Pages.Count - 1 Step i + 1
                ' Obtient la largeur et la hauteur de la page
                Dim pageWidth As Single = document.Pages(i).ActualSize.Width
                Dim pageHeight As Single = document.Pages(i).ActualSize.Height

                ' Définit l'opacité du fond
                document.Pages(i).BackgroudOpacity = 0.3f

                ' Définit l'image de fond de la page actuelle
                document.Pages(i).BackgroundImage = image

                ' Positionne l'image de fond au centre de la page
                Dim rect As Rectangle = New Rectangle((pageWidth - imgWidth) / 2, (pageHeight - imgHeight) / 2, imgWidth, imgHeight)
                document.Pages(i).BackgroundRegion = rect
            Next

            ' Enregistre le document dans un fichier
            document.SaveToFile("AddImageWatermark.pdf")
            document.Close()
        End Sub
    End Class
End Namespace
```

## Conclusion
Ajouter un filigrane d'image est un bon moyen de protéger votre document PDF. En utilisant l'exemple de code présenté dans cet article, vous pouvez automatiser le processus d'ajout de filigranes d'image aux documents PDF de manière efficace avec C# ou VB.NET.

## Sujets connexes

- [C#/VB.NET : Chiffrer ou déchiffrer des fichiers PDF](https://www.e-iceblue.com/Tutorials/Spire.PDF/Spire.PDF-Program-Guide/Security/C-Encrypt-and-Decrypt-PDF-file.html)
- [C#/VB.NET : Signer numériquement un PDF avec du texte et/ou une image](https://www.e-iceblue.com/Tutorials/Spire.PDF/Spire.PDF-Program-Guide/PDF-Security/Create-Visible-Digital-Signature-in-PDF-with-C-Code.html)
- [C#/VB.NET : Créer, remplir ou supprimer des formulaires modifiables dans un PDF](https://www.e-iceblue.com/Tutorials/Spire.PDF/Spire.PDF-Program-Guide/C-/VB.NET-Create-FormField-in-PDF.html)
- [C#/VB.NET : Convertir un PDF en images (JPG, PNG, BMP)](https://www.e-iceblue.com/Tutorials/Spire.PDF/Spire.PDF-Program-Guide/Convert-PDF-Page-to-Image-with-C-code.html)
- [C#/VB.NET : Convertir un PDF en Word](https://www.e-iceblue.com/Tutorials/Spire.PDF/Spire.PDF-Program-Guide/Conversion/How-to-convert-PDF-to-Doc-in-C-VB.NET.html)