Spire.Cloud.Word 提供了 watermarksApi 接口可用于添加水印,包括添加文本水印(SetTextWatermark)、图片水印(SetImageWatermark),本文将对此做详细介绍。
具体步骤:
步骤 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,destFilePath,folder,storage,password);
}
}
}
文本水印添加效果:
示例 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,destFilePath,folder,storage,scaling,washout,password);
}
}
}
图片水印添加效果: