在 Java 中將水印應用於 PDF

無論您是想將品牌應用到您的文檔,還是想保護文件免遭任何非法使用,水印都能為您完成這項工作。在本文中,您將學習如何使用 Java 以編程方式將水印添加到 PDF 文件。

以下主題涵蓋如下:

Java 水印 API

GroupDocs.Watermark for Java 是一個水印 API,允許在 PDF 文件中處理文本和圖像水印。除了 PDF 文件,API 還允許為文字處理文檔、電子表格、演示文稿、電子郵件、圖像、Visio 繪圖和許多其他格式添加、刪除和提取水印。從文檔,您可以進一步檢查功能和支持的文件格式

下載和配置

下載 部分獲取 PDF 水印庫。對於基於 Maven 的 Java 應用程序,在 pom.xml 中添加以下配置。稍後,您可以嘗試本文的示例以及 GitHub 中的更多示例。有關詳細信息,您還可以訪問API 參考

<repository>
	<id>GroupDocsJavaAPI</id>
	<name>GroupDocs Java API</name>
	<url>http://repository.groupdocs.com/repo/</url>
</repository>
<dependency>
        <groupId>com.groupdocs</groupId>
        <artifactId>groupdocs-watermark</artifactId>
        <version>21.3</version> 
</dependency>

使用 Java 將文本水印添加到 PDF

通過在所有頁面或設置位置的任何選擇性頁面上添加格式化文本,可以將文本水印應用於 PDF 文件。

以下步驟顯示如何將文本作為水印添加到 PDF 文件。

  • 使用 Watermarker 類加載 PDF 文檔。
  • 使用 TextWatermark 類初始化文本水印。
  • 通過改變旋轉角度、xy 位置、不透明度、前景色和背景色等來設置外觀。
  • 設置目標頁面索引(可選)。如果不設置索引,水印將默認應用於所有頁面。
  • 將文本水印添加到 Watermarker。
  • 使用適當的 save 方法保存帶水印的文件。

源代碼顯示瞭如何在 Java 中為 PDF 文件添加文本水印。

// 將文本水印應用於Java中PDF文件的所有頁面
PdfLoadOptions loadOptions = new PdfLoadOptions();
Watermarker watermarker = new Watermarker("path/document.pdf", loadOptions);

// 在所有頁面的中心添加文本
TextWatermark textWatermark = new TextWatermark("Watermark", new Font("Arial", 80));
textWatermark.setRotateAngle(-45);
textWatermark.setOpacity(0.3);
textWatermark.setForegroundColor(Color.getDarkBlue());
textWatermark.setHorizontalAlignment(HorizontalAlignment.Center);
textWatermark.setVerticalAlignment(VerticalAlignment.Center);

// PdfArtifactWatermarkOptions imageWatermarkOptions = new PdfArtifactWatermarkOptions();
// imageWatermarkOptions.setPageIndex(0);
watermarker.add(textWatermark);

// 保存帶水印的 PDF
watermarker.save("path/text-watermark.pdf");
watermarker.close();

上述源代碼的輸出顯示給定 PDF 文件的兩個頁面上的文本水印。

文字水印轉PDF

使用 Java 將圖像水印添加到 PDF

同樣,您可以將圖像添加到任何 PDF 文件的任何位置,就像文本水印選項一樣。

以下步驟顯示如何將圖像作為水印添加到 PDF 文件。

  • 使用 Watermarker 類加載 PDF 文檔。
  • 使用 ImageWatermark 類初始化圖像水印。
  • 通過調整旋轉角度、xy 位置、不透明度和其他選項來設置外觀。
  • 設置目標頁面索引。 (可選的)
  • 將圖像水印添加到 Watermarker。
  • 使用適當的 save 方法保存帶水印的文件。

源代碼顯示瞭如何使用 Java 將圖像水印添加到 PDF 文件。

// 將圖像水印應用於Java中PDF文件的第二頁
PdfLoadOptions loadOptions = new PdfLoadOptions();
Watermarker watermarker = new Watermarker("path/document.pdf", loadOptions);

// 加載圖像並設置外觀
ImageWatermark imageWatermark = new ImageWatermark(Constants.LockPng);
imageWatermark.setOpacity(0.7);
imageWatermark.setX(130);
imageWatermark.setY(390);

// 將圖像添加到 PDF 文件的第二頁
PdfArtifactWatermarkOptions imageWatermarkOptions = new PdfArtifactWatermarkOptions();
imageWatermarkOptions.setPageIndex(1);
watermarker.add(imageWatermark, imageWatermarkOptions);
imageWatermark.close();

// 保存帶水印的 PDF
watermarker.save("path/image-watermark.pdf");
watermarker.close();

上述源代碼的輸出顯示給定 PDF 文件第二頁上的圖像水印。

圖片水印轉PDF

獲取免費的 API 許可證

您可以獲得免費的臨時許可證,以便在不受評估限制的情況下使用 API。

結論

總而言之,您學會了使用 Java 將水印應用於 PDF 文件。我們討論了在 PDF 文件上添加文本和圖像作為水印。有關 API 的更多詳細信息或學習,請訪問 文檔。如有疑問,請通過論壇 聯繫我們。

也可以看看