Spire.Cloud.Word 添加Word水印(文本水印、图片水印)
概述
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(, "宋体")
{
Color = new Color(, , )
}
}; //调用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 = ;
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);
}
}
}
图片水印添加效果:

(本文完)
Spire.Cloud.Word 添加Word水印(文本水印、图片水印)的更多相关文章
- Java 读取Word批注中的文本和图片
本文将介绍读取Word批注的方法,包括读取Word批注中的文本及图片.关于操作Word批注的方法还可以参考这两篇文章:Java 添加.回复.修改.删除Word批注:Java 给Word指定字符串添加批 ...
- php文字水印和php图片水印实现代码
本文章向码农们介绍php文字水印和php图片水印实现代码,需要的码农可以参考一下. php 文字水印 文字水印就是在图片上加上文字,主要使用gd库的imagefttext方法,并且需要字体文件. 实现 ...
- Java 给Word每一页设置不同图片水印效果
Word中设置水印时,可加载图片设置为水印效果,但通常添加水印效果时,会对所有页面都设置成统一效果,如果需要对每一页或者某个页面设置不同的水印效果,则可以参考本文中的方法.下面,将以Java代码为例, ...
- C# 给Word每一页设置不同图片水印
Word中设置水印时,可加载图片设置为水印效果,但通常添加水印效果时,会对所有页面都设置成统一效果,如果需要对每一页或者某个页面设置不同的水印效果,则可以参考本文中的方法.下面,将以C#代码为例,对W ...
- Java 读取Word表格中的文本和图片
本文通过Java程序来展示如何读取Word表格,包括读取表格中的文本和图片.下面是具体实现的步骤和方法. 1. 程序环境准备 代码编译工具:IntelliJ IDEA Jdk版本:1.8.0 测试文档 ...
- C# 给图片添加透明的文字、图片水印
#region 添加水印 /// <summary> /// 添加文字水印 /// </summary> /// <param name="image" ...
- php文字水印和php图片水印实现代码(二种加水印方法)
文字水印 文字水印就是在图片上加上文字,主要使用gd库的imagefttext方法,并且需要字体文件.效果图如下: $dst_path = 'dst.jpg';//创建图片的实例$dst = imag ...
- 向Word添加一段文本
文档层次结构 [段落之后] 是一段连续文本,它定义具有一组常见属性的文本区域.一段连续文本由 r 元素表示,这样创建器便可组合换行.样式或格式设置属性,从而将相同信息应用于一段连续文本的所有部分. 正 ...
- Java 在Word中添加多行图片水印
Word中设置水印效果时,不论是文本水印或者是图片水印都只能添加单个文字或者图片到Word页面,效果比较单一,本文通过Java代码示例介绍如何在页面中添加多行图片水印效果,即水印效果以多个图片平铺到页 ...
随机推荐
- WinDbg命令系统
WinDbg命令系统 WinDbug三种命令 WinDbug是一个强大的调试器,大部分很多功能都是通过命令来实现的,命令在命令窗口中输入,主要分为以下三类: 标准命令 标准命令提供了调试器的基本功能, ...
- Method Not Allowed (GET): /boxuegos/index/ 错误
1,Method Not Allowed (GET) 请求方法不被允许, 错误原因:我调用的是index这个方法,但是我上面定义了一个空的子路由,所以页面加载不了,控制台出现Method Not Al ...
- mysql 主从同步(转)
教程开始:一.安装MySQL 说明:在两台MySQL服务器192.168.21.169和192.168.21.168上分别进行如下操作,安装MySQL 5.5.22 二.配置MySQL主服务器(19 ...
- 机器学习 AI 谷歌ML Kit 与苹果Core ML
概述 移动端所说的AI,通常是指"机器学习". 定义:机器学习其实就是研究计算机怎样模拟人类的学习行为,以获取新的知识或技能,并重新组织已有的知识结构使之不断改善自身.从实践的意义 ...
- 长寿花:dp
当然可以打组合数+CRT什么的,但是其实不必那么麻烦. 先讲那个思路,再转化过来吧. 首先可以发现的一个问题:所有颜色之间是没有区别的,所以我们其实并不在意到底是哪几种,我们只需要知道有几种就可以了. ...
- Vue+element UI实现分页组件
介绍 这是一个是基于element-UI的分页组件基础上,进行了二次封装的分页组件,在展示数据时,该分页组件采用了每显示一页数据,只请求当前页面的数据的请求策略,从而避免了一次性将数据全部请求所造成的 ...
- C++ 11新标准实现POJ No.1002-487-3279
487-3279(重复的电话号码查询)(标签:优先队列,哈希表) 题目描述 企业喜欢用容易被记住的电话号码.让电话号码容易被记住的一个办法是将它写成一个容易记住的单词或者短语.例如,你需要给滑铁卢大学 ...
- python入门三元运算
三元运算又称三目运算,是对简单条件语句的简写: a = 1 b = 2 c = ' ' c = a if a > b else b 在上面中首先判断a是否大于b如果为真则c = a,如果为 ...
- Web微信开发工具无法输入中文?官方bug
Ctrl+shift+w 重启工具就OK啦
- IDEA升级,提示"Connection Error Failed to prepare an update"
问题来源: 之前修改了IDEA的默认配置文件路径,然后升级新版本时就无法升级,提示"Failed to prepare an update Temp directory inside ins ...