As marcas d’água são normalmente usadas para evitar qualquer uso ilegal de documentos confidenciais. Quando a confidencialidade não for mais necessária, é melhor remover as marcas d’água desses documentos. Pode haver marcas d’água baseadas em texto e imagem em um documento. Hoje, veremos como remover marcas d’água de documentos PDF usando C#.

Remover marca d'água de documentos PDF

API .NET para remover marcas d’água de PDF

GroupDocs.Watermark apresenta a API .NET para lidar com marcas d’água em documentos e imagens de diferentes [formatos de arquivo](https://docs.groupdocs.com/conversion/net /supported-document-formats/). Se você estiver criando um aplicativo de remoção de marca d’água, ele fornece algumas maneiras úteis de:

  • Remova todas as marcas d’água do PDF
  • Excluir marcas d’água com formatação de texto específica
  • Remover marcas d’água de hiperlink

Vamos aprender como um desenvolvedor C# pode remover marcas d’água de PDF usando a API GroupDocs.Watermark for .NET de diferentes maneiras.

Remover todas as marcas d’água do documento PDF usando C#

A API permite que você encontre e remova facilmente uma marca d’água específica e todas as marcas d’água de um documento. O código a seguir remove todas as marcas d’água de um documento PDF usando C#.

  • Carregue o arquivo PDF usando Watermarker.
  • Busque todas as possíveis marcas d’água como uma coleção usando a pesquisa.
  • Percorra toda a coleção e remova todas as marcas d’água ou aquela que atenda ao seu critério.
  • Salve o PDF atualizado sem mais marcas d’água nele.

O código C# a seguir remove todas as marcas d’água de um documento PDF.

// Remova as marcas d'água de PDF e outros documentos usando C#
using (Watermarker watermarker = new Watermarker("filepath/documentWithWatermarks.pdf"))
{
    PossibleWatermarkCollection possibleWatermarks = watermarker.Search();

    // Remova todas as marcas d'água mencionando o índice dentro do documento.
    for (int i = 0; i < possibleWatermarks.Count; i++)
    {
        possibleWatermarks.RemoveAt(i);
    }
    watermarker.Save("filepath/no-watermarks.pdf");
}

Remova a marca d’água do PDF com formatação de texto específica usando C

Usando a API, você pode pesquisar e remover as marcas d’água com base na formatação do texto. Você pode fornecer um critério de pesquisa contendo nome, fonte, tamanho, cor etc. e a API encontrará as marcas d’água com propriedades correspondentes. O trecho de código a seguir demonstra como pesquisar e remover marcas d’água de um arquivo PDF com uma formatação de texto específica usando C#.

  • Carregue o arquivo PDF usando Watermarker.
  • Defina o critério de pesquisa usando TextFormattingSearchCriteria.
  • Mencione todas as propriedades de formatação necessárias.
  • Execute Search() e obtenha todas as possíveis marcas d’água como uma coleção fornecendo os critérios definidos.
  • Remova todas as marcas d’água pesquisadas usando o método Clear().
  • Salve o PDF atualizado sem marca d’água com as propriedades definidas.

O código C# a seguir remove as marcas d’água em um documento PDF com a formatação de texto especificada.

// Remova marcas d'água com formatação de texto específica de um PDF usando 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");
}

A API .NET de marca d’água de documento permite pesquisar e remover hiperlinks em um documento de qualquer formato de documento suportado. As etapas a seguir permitem remover marcas d’água de hiperlink de um documento PDF no aplicativo .NET usando C#.

  • Carregue o arquivo PDF usando Watermarker.
  • Busque todas as possíveis marcas d’água como uma coleção usando a pesquisa.
  • Percorra toda a coleção e remova todas as marcas d’água ou aquela que atenda ao seu critério.
  • Salve o PDF atualizado sem mais marcas d’água nele.

O exemplo de código C# a seguir mostra como localizar e remover marcas d’água de hiperlink com uma URL específica de um documento PDF.

// Remover marcas d'água de hiperlink do PDF usando 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");
}

Conclusão

Para concluir, hoje aprendemos a remover diferentes marcas d’água dos documentos PDF usando C#. Acredito que agora você ficará mais confiante para criar seu próprio aplicativo .NET para localizar e remover marcas d’água de texto, bem como marcas d’água de imagem de documentos PDF. Além disso, você pode adicionar recursos de remoção de marcas d’água com formatação especificada e marcas d’água de hiperlink.

Além disso, você pode aprender mais sobre GroupDocs.Watermark for .NET em sua documentação . Para dúvidas, entre em contato conosco pelo fórum.

Veja também