水印是一种常用于各种文档的声明、防伪手段,一般可设置文字水印或者加载图片作为水印。以下内容将分享通过Java编程给Word文档添加水印效果的方法。
使用工具:Free Spire.Doc for Java 2.0.0(免费版)
为了方便大家阅读,这里我新建了一个工程,把需要添加水印的文档(test、test1)一并放到根目录下,如图
接下来去官方网址下载jar包,如下图,下载过程省略。
下载后解压,在项目中创建一个文件夹,此处我命名为lib,然后将解压后lib文件夹中的jar文件复制到项目中
右键选择”Add as Library”完成导入,引用完成后,可以查看包含在其中的类、方法、属性等。
Java代码如下
import com.spire.doc.Document;
import com.spire.doc.FileFormat;
import com.spire.doc.Section;
import com.spire.doc.TextWatermark;
import com.spire.doc.documents.WatermarkLayout;
import java.awt.*;
/**
* @author Lebron
* @ClassName WaterMark
* @Description TODO
* @Date 2019/11/7 17:55
* @Version 1.0
*/
public class WaterMark {
public static void main(String[] args) {
Document document = new Document();
document.loadFromFile("test.docx");
//插入文本水印
InsertTextWatermark(document.getSections().get(0));
//保存文档
document.saveToFile("test1.docx",FileFormat.Docx );
}
//自定义方法指定文本水印字样,并设置成水印
private static void InsertTextWatermark(Section section){
TextWatermark txtWatermark = new TextWatermark();
txtWatermark.setText("咔咔测试");
txtWatermark.setFontSize(40);
txtWatermark.setColor(Color.red);
txtWatermark.setLayout(WatermarkLayout.Diagonal);
section.getDocument().setWatermark(txtWatermark);
}
}
运行结果如下
补充:图片水印,首先将要添加的水印图片放入项目根路径,和test.docx同级,下面是代码部分:
public static void main(String[] args) {
//加载测试文档
Document document = new Document();
document.loadFromFile("test.docx");
//加载需要设置成水印的图片
PictureWatermark picture = new PictureWatermark();
picture.setPicture("test2.jpg");// test2.jpg是图片路径
picture.setScaling(10);
picture.isWashout(false);
//将图片设置成水印
document.setWatermark(picture);
//保存文档
document.saveToFile("test1.docx",FileFormat.Docx );
}
效果如下: