从 PDF C# 中删除水印

在许多情况下,PDF 文档都带有水印,这些水印可能会遮盖重要内容或影响演示效果。无论您处理的是文本、图像还是基于超链接的水印,都可以轻松删除它们。在这篇文章中,我们将指导您完成两种常见场景:从 PDF 中删除一般水印和在 C# 中专门删除超链接水印。

从 PDF 中删除水印 - C# API 安装

要从 PDF 文档中删除水印,您需要在您的环境中安装 Conholdate.Total for .NET API。下载 DLL 文件或使用以下 NuGet 安装命令:

PM> NuGet\Install-Package Conholdate.Total

使用 C# 从 PDF 中删除水印

要从 PDF 文档中删除水印,我们将使用 Watermarker 类。这个强大的工具允许您搜索并消除文档中存在的任何水印。

  • 加载 PDF:我们首先使用 Watermarker 类加载 PDF 文档。
  • 搜索水印:搜索方法识别文档中存在的潜在水印。
  • 删除水印:然后代码通过指定水印索引(RemoveAt(0))或直接传递水印对象(Remove(possibleWatermarks[0]))来删除水印。
  • 保存文档:最后,文档保存,没有水印。

下面的代码演示如何使用 C# 从 PDF 中删除水印。

using (Watermarker watermarker = new Watermarker("document.pdf"))
{
    PossibleWatermarkCollection possibleWatermarks = watermarker.Search();

    // 从文档中删除指定索引处可能的水印。
    possibleWatermarks.RemoveAt(0);

    // 从文档中删除指定的可能的水印。
    possibleWatermarks.Remove(possibleWatermarks[0]);

    watermarker.Save("document.pdf");
}

这种方法灵活,可以让您快速有效地去除各种类型的水印,例如文本或基于图像的水印。

使用 C# 从 PDF 中删除超链接水印

一些 PDF 文档包含超链接水印,其中水印由可点击的 URL 组成。可以通过专门定位超链接来删除这些水印。以下是如何根据特定 URL 模式搜索和删除超链接水印的示例。

  • 搜索超链接:此代码首先使用带有正则表达式的 TextSearchCriteria 来查找与指定 URL 匹配的超链接(例如“someurl.com")。
  • 过滤超链接:检查识别的水印是否是超链接(HyperlinkPossibleWatermark)。
  • 删除超链接:如果是超链接,代码会将其 URL 输出到控制台并从文档中删除该超链接。
  • 保存文档:更新后的 PDF 文档将保存,但不带有超链接水印。
using (Watermarker watermarker = new Watermarker("document.pdf"))
{
    PossibleWatermarkCollection watermarks = watermarker.Search(new TextSearchCriteria(new Regex(@"someurl\.com")));
   for (int i = watermarks.Count - 1; i >= 0; i--)
    {
        // 确保仅删除超链接。
        if (watermarks[i] is HyperlinkPossibleWatermark)
        {
            // 输出超链接的完整 url
            Console.WriteLine(watermarks[i].Text);

            // 从文档中删除超链接
            watermarks.RemoveAt(i);
        }
    }

    watermarker.Save("document.pdf");
}

如果您需要清理包含 URL 作为水印的文档,此方法特别有用,确保仅删除指定的超链接水印。

免费评估许可证

您可以获得 免费临时许可证 来评估不同的功能,不受任何限制。

总结

无论您处理的是一般的文本或基于图像的水印,还是更具体的超链接水印,API 都能提供强大而灵活的解决方案。您可以快速识别和删除不需要的水印,确保您的 PDF 干净且专业。该过程很简单,可以精确控制删除的水印类型(无论是通过索引还是 URL 模式),让您能够完全根据您的需求定制文档。如有任何疑问,请通过 forum 与我们联系。

参见