如何使用 GroupDocs.Watermark Java SDK 為 Excel 工作表加入浮水印
保護 Excel 檔案免於未授權散佈,或單純加強品牌辨識度,都可以透過加入一個在任何檢視方式下都會顯示的視覺標記來達成。在本教學中,你將學會 如何加入浮水印 — 特別是影像浮水印 — 到 Excel 工作表的頁首或頁尾,使用 GroupDocs.Watermark Java SDK。完成本指南後,你即可將商標、機密標章或任何自訂影像直接嵌入活頁簿,而不會改動儲存格資料。
快速解答
- 「how to add watermark」指的是什麼? 在每一頁列印頁面或特定區段(如頁首/頁尾)上顯示的圖像(或文字)覆蓋層。
- 哪個程式庫在 Java 中支援此功能?
GroupDocs.WatermarkJava SDK(最新版本)。 - 我需要授權嗎? 免費試用可用於開發;正式上線需購買商業授權。
- 可以在頁首加入商標嗎? 可以——使用圖像浮水印並設定頁首選項(
add logo to header)。 - 能一次處理多個工作表嗎? 透過迴圈遍歷工作表索引,將相同浮水印套用至每張工作表。
前置條件
請確保你已具備以下項目:
- GroupDocs.Watermark for Java SDK(版本 24.11 或更新)。
- Java Development Kit (JDK) 8 或以上。
- 具備基本的 Java 與 Excel 檔案結構知識。
設定 GroupDocs.Watermark for Java SDK
首先,加入必要的 Maven 相依性,使 SDK 能在你的 classpath 中使用。
Maven Configuration
<repositories>
<repository>
<id>repository.groupdocs.com</id>
<name>GroupDocs Repository</name>
<url>https://releases.groupdocs.com/watermark/java/</url>
</repository>
</repositories>
<dependencies>
<dependency>
<groupId>com.groupdocs</groupId>
<artifactId>groupdocs-watermark</artifactId>
<version>24.11</version>
</dependency>
</dependencies>
Direct Download
如果不想使用 Maven,可從官方發行頁面下載最新的 JAR: GroupDocs releases。
License Acquisition
- 取得免費試用或暫時授權金鑰以評估全部功能。
- 購買完整授權以供商業部署使用。
Initialization and Setup
建立一個 Watermarker 實例,用來載入 Excel 檔案,並作為所有浮水印操作的入口點。
import com.groupdocs.watermark.Watermarker;
import com.groupdocs.watermark.options.SpreadsheetLoadOptions;
// Initialize Load Options
SpreadsheetLoadOptions loadOptions = new SpreadsheetLoadOptions();
// Create Watermarker instance with your spreadsheet file path
Watermarker watermarker = new Watermarker("YOUR_DOCUMENT_DIRECTORY/spreadsheet.xlsx", loadOptions);
如何在試算表的頁首/頁尾加入浮水印
以下為逐步說明,展示 java add image watermark 功能,同時說明如何 add logo to header。
Step 1: Configure Loading Options
我們先定義載入選項並重新實例化 Watermarker,確保 SDK 能正確讀取活頁簿。
import com.groupdocs.watermark.common.HorizontalAlignment;
import com.groupdocs.watermark.common.VerticalAlignment;
import com.groupdocs.watermark.options.SpreadsheetLoadOptions;
// Load the document with specified load options
SpreadsheetLoadOptions loadOptions = new SpreadsheetLoadOptions();
Watermarker watermarker = new Watermarker("YOUR_DOCUMENT_DIRECTORY/spreadsheet.xlsx", loadOptions);
Step 2: Create and Configure Image Watermark
建立指向欲嵌入影像(例如商標或「CONFIDENTIAL」標章)的 ImageWatermark 物件。調整對齊方式與縮放比例,使其在頁首/頁尾區域內呈現得恰當。
import com.groupdocs.watermark.watermarks.ImageWatermark;
import com.groupdocs.watermark.watermarks.SizingType;
// Initialize the image watermark with your logo or desired image
ImageWatermark watermark = new ImageWatermark("YOUR_DOCUMENT_DIRECTORY/logo.png");
// Set alignment and scaling for a proper fit within the header/footer
watermark.setVerticalAlignment(VerticalAlignment.Top);
watermark.setHorizontalAlignment(HorizontalAlignment.Center);
watermark.setSizingType(SizingType.ScaleToParentDimensions); // Scales with parent dimensions
watermark.setScaleFactor(1); // Adjust scale factor as needed
Step 3: Configure Header/Footer Options
告訴 SDK 哪一個工作表以及哪一個部位(頁首或頁尾)要套用浮水印。此處即可 add logo to header,或改為套用於頁尾。
import com.groupdocs.watermark.options.SpreadsheetWatermarkHeaderFooterOptions;
// Set options for applying the watermark
SpreadsheetWatermarkHeaderFooterOptions headerFooterOptions = new SpreadsheetWatermarkHeaderFooterOptions();
headerFooterOptions.setWorksheetIndex(0); // Apply to first worksheet (index 0)
Step 4: Add the Watermark
將先前準備好的影像浮水印附加至選定的頁首/頁尾位置。
// Add the configured watermark
watermarker.add(watermark, headerFooterOptions);
Step 5: Save and Close
將變更儲存為新檔案,保持原始活頁簿不受影響,最後釋放資源。
// Save the watermarked document
watermarker.save("YOUR_OUTPUT_DIRECTORY/out_spreadsheet.xlsx");
// Release resources by closing the Watermarker instance
watermarker.close();
Troubleshooting Tips
- 仔細檢查影像路徑;路徑錯誤會拋出
FileNotFoundException。 - 工作表索引從 0 開始,請確認設定的索引確實存在。
- 若浮水印變形,可調整
setScaleFactor,或將SizingType改為StretchToParentDimensions。
為什麼要使用 GroupDocs.Watermark Java SDK?
- 跨格式支援 – 可處理 Excel、Word、PowerPoint、PDF 以及影像等多種檔案。
- 無損編輯 – 原始儲存格資料保持不變。
- 效能最佳化 – 適用於大型活頁簿與批次處理。
實務應用案例
| Scenario | How the watermark helps |
|---|---|
| 機密報告 | 在每一頁列印時加入「CONFIDENTIAL」影像。 |
| 品牌強化 | 在發票的頁首放置公司商標。 |
| 版本追蹤 | 嵌入會自動更新的版本號標章。 |
| 法規遵循 | 為受管制的試算表加上合規印章。 |
效能考量
- 記憶體使用量 – 處理極大型試算表時需監控 JVM 堆積。
- 批次處理 – 以群組方式處理檔案,以降低記憶體佔用。
- 重複使用物件 – 為多個檔案共用同一個
Watermarker實例,可減少開銷。
常見問題
Q: 可以在同一份文件加入多個浮水印嗎?
A: 可以,建立額外的 ImageWatermark 實例,分別設定後再呼叫 watermarker.add()。
Q: 如何移除試算表中已存在的浮水印?
A: 目前 GroupDocs.Watermark 主要提供加入浮水印的功能。若要移除,需重新產生不含浮水印的活頁簿,或使用支援浮水印抽取的工具。
Q: 支援哪些影像格式作為浮水印?
A: 支援常見的 PNG、JPEG 等格式,完整支援清單請參考 GroupDocs documentation。
Q: 能對受密碼保護的試算表加浮水印嗎?
A: 能,只要在開啟檔案時提供正確的密碼即可。
Q: 如何在文件的所有工作表上套用浮水印?
A: 迭代每個工作表索引,重複浮水印步驟,並在每次迭代中設定 headerFooterOptions.setWorksheetIndex(i)。
結論
現在你已掌握使用 GroupDocs.Watermark Java SDK 為 Excel 加入 java add excel watermark(特別是影像浮水印)的完整、可投入生產環境的方法。此方式可在 Excel 檔案的頁首或頁尾直接加入品牌、機密聲明或任何視覺提示,同時保持底層資料不受影響。歡迎探索其他浮水印類型(文字、圖形),並將它們結合使用,以提升文件保護的完整性。
Last Updated: 2026-03-20
Tested With: GroupDocs.Watermark 24.11 for Java
Author: GroupDocs