在本文中,您将学习如何在 C# .NET 中以编程方式在 PDF 文档中添加或删除水印。

PDF 文件中经常使用水印。您可以通过几个简单的步骤在 PDF 文件中插入或删除文本和图像水印。您可以轻松控制用于处理水印的许多属性。例如,不透明度、位置、旋转、颜色、字体、图像等,等等。同样,可以通过快速 API 调用为水印设置许多其他属性。

让我们通过以下部分进一步探讨这个主题:

C# .NET API 在 PDF 中添加或删除水印 – 免费下载

Aspose.PDF for .NET API 让您可以创建、编辑和操作您的 PDF 文档。您可以轻松地使用在 PDF 文档中添加或删除水印的功能。您可以从 New Releases 部分下载最新的 DLL 文件,或使用以下 NuGet 命令安装它们:

PM> Install-Package Aspose.Pdf

API 将在几分钟内完成配置,现在您已准备好使用 PDF 文档中的水印。

在 C# .NET 中的 PDF 文件中添加文本水印

PDF 文档中经常使用文本水印来显示文档的目的或性质。例如,某些组织可能会根据文档的性质将文本水印添加为“机密”或“机密”。同样,您可以控制字体大小、字体样式、颜色、旋转、位置等。您可以通过以下步骤在 PDF 文件中添加文本水印:

  1. 加载输入的 PDF 文档
  2. 创建 TextStamp 类实例
  3. 设置原点和其他属性
  4. 为文本水印设置 Stamp ID 以便以后识别它
  5. 在特定页面上添加图章
  6. 保存带有文本水印的输出 PDF

以下代码片段说明了如何使用 C# 在 PDF 文件中添加或插入文本水印:

// 打开文档
Document pdfDocument = new Document(dataDir + "Input.pdf");

// 创建文字图章
TextStamp textStamp = new TextStamp("CONFIDENTIAL");
// 设置原点
textStamp.XIndent = 25;
textStamp.YIndent = 400;

// 设置文本属性
textStamp.TextState.Font = FontRepository.FindFont("Arial");
textStamp.TextState.FontSize = 72.0F;
textStamp.TextState.FontStyle = FontStyles.Italic;
textStamp.TextState.ForegroundColor = Aspose.Pdf.Color.FromRgb(System.Drawing.Color.Gray);
textStamp.Opacity = 50;

// 为文本水印设置 Stamp ID 以便以后识别它
textStamp.setStampId(123456);

// 在特定页面上添加图章
pdfDocument.Pages[1].AddStamp(textStamp);

dataDir = dataDir + "Add_Text_Watermark.pdf";
// 保存输出文档
pdfDocument.Save(dataDir);

在 C# 中的 PDF 文件中添加图像水印

图像包含大量有意义的信息,因此图像水印也经常用于 PDF 文件中。例如,某个组织或机构发布的文件可能在页面背景中带有其徽标。您可以使用 C# 使用在 PDF 文档中插入图像水印的功能,步骤如下:

  1. 加载输入的 PDF 文档
  2. 访问输入 PDF 的任何页面
  3. 创建图像印章
  4. 根据页面尺寸居中调整图片水印
  5. 如果需要,设置戳 id 以便稍后删除水印
  6. 在特定页面或所有页面上添加图章
  7. 保存带有图像水印的输出 PDF

下面的代码片段展示了如何使用 C# 在 PDF 文件中插入图像水印:

// 加载输入的 PDF 文档
Document pdfDocument = new Document(dataDir + "Input.pdf");

// 访问输入 PDF 的任何页面
Page testpage = pdfDocument.Pages[1];

// 创建图像印章
ImageStamp imageStamp = new ImageStamp(dataDir + "aspose-logo.png");
imageStamp.Background = true;
imageStamp.Height = 300;
imageStamp.Width = 300;

// 根据页面尺寸居中调整图片水印
imageStamp.XIndent = (testpage.PageInfo.Width / 2) - (imageStamp.Width / 2);
imageStamp.YIndent = (testpage.PageInfo.Height / 2) - (imageStamp.Height / 2);
imageStamp.Opacity = 0.5;

// 如果需要,设置戳 id 以便稍后删除水印
imageStamp.setStampId(12345678);

// 在特定页面上添加图章
//pdfDocument.Pages[1].AddStamp(imageStamp);

// 为 PDF 的每一页添加图章
foreach (Page page in pdfDocument.Pages)
{
    page.AddStamp(imageStamp);
}

dataDir = dataDir + "Add_Image_Watermark.pdf";

// 保存输出文档
pdfDocument.Save(dataDir);

您可以在屏幕截图中注意到 PDF 文件的居中对齐的图像水印:

图片水印PDF

使用 C# 去除 PDF 文件中的水印

您可以从 PDF 文档中删除/删除水印。图像水印或文本水印可以使用上面示例中在添加水印时设置的戳 id 属性来识别。您需要按照以下步骤从 PDF 文件中删除水印:

  1. 初始化 PdfContentEditor 类对象
  2. 调用 BindPdf 方法
  3. 使用特定 id 删除水印
  4. 保存带有删除水印的输出 PDF

下面的代码展示了如何在 C# 中从 PDF 文件中删除图像或文本水印:

// 初始化 PdfContentEditor 类对象
PdfContentEditor contentEditor = new PdfContentEditor();

// 调用 BindPdf 方法
contentEditor.BindPdf(dataDir + "Watermark.pdf");

// 使用特定 id 删除水印
contentEditor.DeleteStampById(12345678);

// 保存带有删除水印的输出 PDF
contentEditor.Save(dataDir + @"Remove_Watermark.pdf");

结论

在本文中,您学习了如何使用 C# 以编程方式在 PDF 文档中添加图像水印或文本水印。同样,我们还探讨了如何在 .NET 应用程序中使用 C# 删除 PDF 文件中的图像或文本水印。此外,如有任何疑问或信息,您可以在免费支持论坛上写信给我们。

也可以看看