
在许多情况下,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 与我们联系。