Word中水印分为文本水印和图片水印两种。文本水印可以表明当前文档的一种状态,比如草稿、保密、已认证等,图片水印则可以用于指定一个公司的logo。
这篇文章介绍如何使用Java和Free Spire.Doc for Java组件给Word文档添加文本水印和图片水印,以及如何从Word文档中删除水印。
添加Jar或Maven依赖
在开始前,我们需要导入jar文件。下载Free Spire.Doc for Java并解压缩,然后从lib文件夹下,导入Spire.Doc.jar包到你的Java应用程序中。
对于maven工程,可以在pom.xml文件中添加对Free Spire.Doc for Java的依赖,参考这篇文章:如何通过Maven仓库安装Spire Java系列组件。
添加水印
- 文本水印
在Free Spire.Doc for Java中,TextWatermark类是用于操作文本水印的。在创建文本水印时,我们可以自定义文本水印的属性,例如字体,字号,字体颜色以及水印的排版样式。
import com.spire.doc.*;
import com.spire.doc.documents.WatermarkLayout;
import java.awt.*;
public class TextWatermark {
public static void main(String[] args){
//加载Word文档
Document doc = new Document();
doc.loadFromFile("Input.docx");
//创建TextWatermark实例
TextWatermark textWatermark = new TextWatermark();
//设置水印文本
textWatermark.setText("Do Not Copy");
//自定义文本水印的属性设置(字体、字号、字体颜色和排版格式)
textWatermark.setFontName("Arial");
textWatermark.setFontSize(30f);
textWatermark.setColor(Color.BLUE);
textWatermark.setLayout(WatermarkLayout.Diagonal);
//将文本水印添加到文档
doc.setWatermark(textWatermark);
//保存
doc.saveToFile("TextWatermark.docx", FileFormat.Docx_2013);
}
}
- 图片水印
PictureWatermark类是用于操作图片水印的。水印图片可以是一张来自本地的图片也可以来自你在其他项目中创建的stream。
import com.spire.doc.*;
public class ImageWatermark {
public static void main(String[] args){
//加载Word文档
Document doc = new Document();
doc.loadFromFile("Input.docx");
//创建PictureWatermark实例
PictureWatermark imageWatermark = new PictureWatermark();
//设置水印图片(可以是本地图片也可以来自流)
imageWatermark.setPicture("C:\\Users\\Administrator\\Desktop\\PIC\\Logo.jpg");
imageWatermark.isWashout(false);
//添加水印图片到文档
doc.setWatermark(imageWatermark);
//保存
doc.saveToFile("ImageWatermark.docx", FileFormat.Docx_2013);
}
}
删除水印
使用doc.setWatermark(null)方法,我们可以轻松的删除一个Word文档中的水印。
import com.spire.doc.*;
public class RemoveWatermark {
public static void main(String[] args){
//加载Word文档
Document doc = new Document();
doc.loadFromFile("ImageWatermark.docx");
//删除水印
doc.setWatermark(null);
//保存
doc.saveToFile("RemoveWatermark.docx", FileFormat.Docx_2013);
}
}