概述
Spire.Cloud.Word提供了watermarksApi接口可用於添加水印,包括添加文本水印(SetTextWatermark)、圖片水印(SetImageWatermark),本文將對此做詳細介紹。
關於Spire.Cloud
Spire.Cloud是雲端 Office 文檔處理軟件,支持在線創建、編輯、保存和打印 Office (Word / Excel / PPT) 文檔,支持 .NET、Java、PHP、Python、JavaScript 等多種編程語言,可操作包括DOC、DOCX、XLS、XLSX、PPT、PPTX、PDF等格式的文檔。
可調用Spire.Cloud Web API SDK 提供的接口對 Word、Excel、PPT、PDF 文檔進行操作,本文以在VS程序中通過調用Spire.Cloud.Word.SDK來操作Word文檔爲例,添加水印。
具體步驟:
步驟1:dll文件獲取及引用。通過Nuget網站下載獲取Spire.Cloud.Word.SDK package,並將Spire.Cloud.Word.Sdk.dll及其依賴項的dll添加引用至程序(如下圖);或者在VS程序中通過Nuget搜索安裝,具體步驟可參考這裏。
步驟2:ID及Key獲取。在冰藍雲網頁註冊賬號並登陸,在“我的應用”板塊創建應用程序,獲得 App ID 及 App Key。
步驟3:文件路徑設置。在冰藍雲網頁“我的文檔”板塊,分別建立input和output兩個文件夾,並將測試的Word文檔和圖片添加在input文件夾下。通過VS代碼程序,生成的帶水印的Word文檔會直接保存至output文件夾下。具體代碼操作方法,請參考以下內容。
【示例1】添加文本水印
using Spire.Cloud.Word.Sdk;
using Spire.Cloud.Word.Sdk.Api;
using Spire.Cloud.Word.Sdk.Client;
using Spire.Cloud.Word.Sdk.Model;
using System;
namespace txtwatermark
{
class Program
{
static String appId = "應用程序App ID";
static String appKey = "應用程序App Key";
static void Main(string[] args)
{
//配置賬號信息
Configuration wordConfiguration = new Configuration(appId, appKey);
//創建TablesApi實例
WatermarksApi watermarksApi = new WatermarksApi(wordConfiguration);
//設置文件夾、測試文檔、水印字樣及水印樣式等
string inputfolder = "input";
string storage = null;
string password = null;
var document = "testfile.docx";
string name = document;
TextWatermark body = new TextWatermark("Watermark")
{
Layout = TextWatermark.LayoutEnum.Diagonal,
Font = new Font(60, "宋體")
{
Color = new Color(100, 100, 100)
}
};
//調用SetTextWatermark接口添加文本水印到Word文檔 ,並保存到指定文件路徑
string destFilePath = "output/SetTextWatermark.docx";
watermarksApi.SetTextWatermark(name, body, inputfolder, storage, password, destFilePath);
}
}
}
文本水印添加效果:
【示例2】添加圖片水印
using Spire.Cloud.Word.Sdk;
using Spire.Cloud.Word.Sdk.Api;
using Spire.Cloud.Word.Sdk.Client;
using System;
namespace ImgWatermark
{
class Program
{
static String appId = "應用程序App ID ";
static String appKey = "應用程序App Key ";
static void Main(string[] args)
{
//配置賬號信息
Configuration wordConfiguration = new Configuration(appId, appKey);
//創建TablesApi實例
WatermarksApi watermarksApi = new WatermarksApi(wordConfiguration);
//設置文件夾、測試文檔、用於水印的圖片及水印樣式等
string inputfolder = "input";
string storage = null;
int scaling = 120;
bool washout = true;
string password = null;
var document = "testfile.docx";
string name = document;
string imagePath = "input/logo.png";
//調用SetImageWatermark接口添加圖片水印到Word文檔 ,並保存到指定文件路徑
string destFilePath = "output/SetImageWatermark.docx";
watermarksApi.SetImageWatermark(name, imagePath, inputfolder, storage, scaling, washout, password, destFilePath);
}
}
}
圖片水印添加效果:
(本文完)