Les filigranes sont normalement utilisés pour éviter toute utilisation illégale de documents confidentiels. Lorsque la confidentialité n’est plus nécessaire, vous feriez mieux de supprimer les filigranes de ces documents. Il peut y avoir des filigranes basés sur du texte et des images dans un document. Aujourd’hui, nous verrons comment supprimer les filigranes des documents PDF à l’aide de C#.

Supprimer le filigrane des documents PDF

API .NET pour supprimer les filigranes PDF

GroupDocs.Watermark présente l’API .NET pour traiter les filigranes dans les documents et les images de différents formats de fichiers. Si vous créez une application de suppression de filigrane, elle vous fournit des moyens utiles pour :

  • Supprimer tous les filigranes du PDF
  • Supprimer les filigranes avec un formatage de texte particulier
  • Supprimer les filigranes de lien hypertexte

Découvrons comment un développeur C# peut supprimer les filigranes d’un PDF à l’aide de l’API GroupDocs.Watermark for .NET de différentes manières.

Supprimer tous les filigranes du document PDF à l’aide de C

L’API vous donne le pouvoir de trouver facilement puis de supprimer un filigrane particulier et tous les filigranes d’un document. Le code suivant supprime tous les filigranes d’un document PDF à l’aide de C#.

  • Chargez le fichier PDF à l’aide de Watermarker.
  • Récupérez tous les filigranes possibles en tant que collection à l’aide de la recherche.
  • Parcourez toute la collection et supprimez chaque filigrane ou celui qui répond à vos critères.
  • Enregistrez le PDF mis à jour sans plus de filigranes dessus.

Le code C# suivant supprime tous les filigranes d’un document PDF.

// Supprimez les filigranes des PDF et autres documents à l'aide de C #
using (Watermarker watermarker = new Watermarker("filepath/documentWithWatermarks.pdf"))
{
    PossibleWatermarkCollection possibleWatermarks = watermarker.Search();

    // Supprimez chaque filigrane en mentionnant l'index dans le document.
    for (int i = 0; i < possibleWatermarks.Count; i++)
    {
        possibleWatermarks.RemoveAt(i);
    }
    watermarker.Save("filepath/no-watermarks.pdf");
}

Supprimer le filigrane du PDF avec un formatage de texte particulier à l’aide de C#

À l’aide de l’API, vous pouvez rechercher et supprimer les filigranes sur la base du formatage du texte. Vous pouvez fournir un critère de recherche contenant le nom, la police, la taille, la couleur, etc. et l’API trouvera les filigranes avec les propriétés correspondantes. L’extrait de code suivant montre comment rechercher et supprimer des filigranes dans un fichier PDF avec une mise en forme de texte spécifique à l’aide de C#.

  • Chargez le fichier PDF à l’aide de Watermarker.
  • Définissez le critère de recherche à l’aide de TextFormattingSearchCriteria.
  • Mentionnez toutes les propriétés de formatage requises.
  • Effectuez une Recherche() et obtenez tous les filigranes possibles en tant que collection en fournissant les critères définis.
  • Supprimez tous les filigranes recherchés à l’aide de la méthode Clear().
  • Enregistrez le PDF mis à jour sans filigrane avec les propriétés définies.

Le code C# suivant supprime les filigranes dans un document PDF ayant la mise en forme de texte spécifiée.

// Supprimer les filigranes avec une mise en forme de texte spécifique d'un PDF à l'aide de C#
using (Watermarker watermarker = new Watermarker("path/Watermarks.pdf"))
{
    TextFormattingSearchCriteria criteria = new TextFormattingSearchCriteria();
    criteria.ForegroundColorRange = new ColorRange();
    criteria.ForegroundColorRange.MinHue = -5;
    criteria.ForegroundColorRange.MaxHue = 10;
    criteria.ForegroundColorRange.MinBrightness = 0.01f;
    criteria.ForegroundColorRange.MaxBrightness = 0.99f;
    criteria.BackgroundColorRange = new ColorRange();
    criteria.BackgroundColorRange.IsEmpty = true;
    criteria.FontName = "Arial";
    criteria.MinFontSize = 19;
    criteria.MaxFontSize = 42;
    criteria.FontBold = true;

    PossibleWatermarkCollection possibleWatermarks = watermarker.Search(criteria);
    possibleWatermarks.Clear();

    watermarker.Save("path/removed-watermarks.pdf");
}

Suppresseur de filigrane de lien hypertexte dans .NET

L’API .NET de filigrane de document vous permet de rechercher et de supprimer des liens hypertexte dans un document de n’importe quel format de document pris en charge. Les étapes suivantes permettent de supprimer les filigranes de lien hypertexte d’un document PDF dans l’application .NET à l’aide de C#.

  • Chargez le fichier PDF à l’aide de Watermarker.
  • Récupérez tous les filigranes possibles en tant que collection à l’aide de la recherche.
  • Parcourez toute la collection et supprimez chaque filigrane ou celui qui répond à vos critères.
  • Enregistrez le PDF mis à jour sans plus de filigranes dessus.

L’exemple de code C# suivant montre comment rechercher et supprimer des filigranes de lien hypertexte avec une URL particulière à partir d’un document PDF.

// Supprimer les filigranes de lien hypertexte du PDF à l'aide de C #
using (Watermarker watermarker = new Watermarker("path/Hyperlink-Watermarks.pdf"))
{
    PossibleWatermarkCollection watermarks = watermarker.Search(new TextSearchCriteria(new Regex(@"someurl\.com")));
    for (int i = 0 ; i < watermarks.Count; i++)
    {
        if (watermarks[i] is HyperlinkPossibleWatermark)
        {
            Console.WriteLine("Removing: " + watermarks[i].Text);
            watermarks.RemoveAt(i);
        }
    }
    watermarker.Save("path/no-hyperlink-watermarks.pdf");
}

Conclusion

Pour conclure, nous avons appris aujourd’hui à supprimer différents filigranes des documents PDF à l’aide de C#. Je pense que vous serez désormais plus confiant pour créer votre propre application .NET pour rechercher et supprimer les filigranes de texte ainsi que les filigranes d’image des documents PDF. De plus, vous pouvez ajouter des fonctionnalités de suppression des filigranes avec un formatage spécifié et des filigranes de lien hypertexte.

En outre, vous pouvez en savoir plus sur GroupDocs.Watermark for .NET à partir de sa documentation . Pour toute question, contactez-nous via le forum.

Voir également