Java如何給Word文檔添加多行文字水印
前言
我在以往的文章中曾介紹過如何給Word文檔添加文本水印和圖片水印,及怎樣刪除文檔中的水印。關(guān)于文本水印,之前那篇教程里主要指的是單行字體的水印,而在操作Word文檔時(shí),有時(shí)也會(huì)碰到需要添加多行文字水印的情況。所以,本文將演示如何使用Java程序來為Word文檔添加多行文字水印。
代碼測(cè)試環(huán)境:
- Intellij Idea2019.1
- JDK 1.8.0
- Spire.Doc.jar
Jar包獲取及導(dǎo)入
方法一:手動(dòng)將Jar包導(dǎo)入IDEA。具體步驟如下:
步驟 1:在 E-iceblue中文官網(wǎng)注冊(cè)并登陸賬號(hào),進(jìn)入Free Spire.Doc for Java下載頁(yè)面下載產(chǎn)品包。

步驟 2:解壓產(chǎn)品包,找到lib文件下的Spire.Doc.jar。

步驟 3:將Spire.Doc.jar手動(dòng)導(dǎo)入IDEA中。

方法二: 通過Maven倉(cāng)庫(kù)安裝導(dǎo)入產(chǎn)品及相關(guān)依賴。創(chuàng)建一個(gè)Maven應(yīng)用程序,在pom.xml文件中配置Maven倉(cāng)庫(kù)路徑及指定Spire.Doc for Java的Maven依賴。
<repositories> <repository> <id>com.e-iceblue</id> <url>http://repo.e-iceblue.cn/repository/maven-public/</url> </repository> </repositories> <dependencies> <dependency> <groupId> e-iceblue </groupId> <artifactId>spire.doc.free</artifactId> <version>2.7.3</version> </dependency> </dependencies>
配置完成后,在IDEA中,您需點(diǎn)擊"Import Changes"即可導(dǎo)入JAR包;在Eclipse中,則需要點(diǎn)擊"Save"按鈕。
代碼演示
Free Spire.Doc for Java通過在Word頁(yè)眉中添加藝術(shù)字來實(shí)現(xiàn)為文檔添加多行文字水印。具體代碼如下:
import com.spire.doc.Document;
import com.spire.doc.FileFormat;
import com.spire.doc.HeaderFooter;
import com.spire.doc.Section;
import com.spire.doc.documents.Paragraph;
import com.spire.doc.documents.ShapeLineStyle;
import com.spire.doc.documents.ShapeType;
import com.spire.doc.fields.ShapeObject;
import java.awt.*;
public class multiTextWatermark {
public static void main(String[] args) {
//加載示例文檔
Document doc = new Document();
doc.loadFromFile("C:\\Users\\Test1\\Desktop\\Sample.docx");
//添加藝術(shù)字并設(shè)置大小
ShapeObject shape = new ShapeObject(doc, ShapeType.Text_Plain_Text);
shape.setWidth(60);
shape.setHeight(20);
//設(shè)置藝術(shù)字文本內(nèi)容、顏色,位置及樣式
shape.setVerticalPosition(30);
shape.setHorizontalPosition(20);
shape.setRotation(315);
shape.getWordArt().setText("內(nèi)部使用");
shape.setFillColor(Color.green);
shape.setLineStyle(ShapeLineStyle.Single);
shape.setStrokeColor(new Color(192, 192, 192, 255));
shape.setStrokeWeight(1);
Section section;
HeaderFooter header;
for (int n = 0; n < doc.getSections().getCount(); n++) {
section = doc.getSections().get(n);
//獲取section的頁(yè)眉
header = section.getHeadersFooters().getHeader();
Paragraph paragraph1;
for (int i = 0; i < 4; i++) {
//添加段落到頁(yè)眉
paragraph1 = header.addParagraph();
for (int j = 0; j < 3; j++) {
//復(fù)制藝術(shù)字并設(shè)置多行多列位置
shape = (ShapeObject) shape.deepClone();
shape.setVerticalPosition(50 + 150 * i);
shape.setHorizontalPosition(20 + 160 * j);
paragraph1.getChildObjects().add(shape);
}
}
}
//保存文檔
doc.saveToFile("output/multi-lineTextwatermark.docx", FileFormat.Docx_2013);
}
}
添加效果:

總結(jié):
通過運(yùn)用以上代碼,多行文字水印能夠完整清晰準(zhǔn)確地被插入到Word文檔中。若對(duì)代碼或Jar包導(dǎo)入有疑問的,可評(píng)論或私信。
到此這篇關(guān)于Java如何給Word文檔添加多行文字水印的文章就介紹到這了,更多相關(guān)Java如何添加文字水印內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
- java.imageIo給圖片添加水印的實(shí)現(xiàn)代碼
- 教你怎么用Java實(shí)現(xiàn)給圖片打上水印
- Java在Excel中添加水印的實(shí)現(xiàn)(單一水印、平鋪水印)
- Java添加Word文本水印和圖片水印
- Java在Word中添加多行圖片水印
- java實(shí)現(xiàn)給圖片加鋪滿的網(wǎng)格式文字水印
- java實(shí)現(xiàn)圖片加水印效果
- java實(shí)現(xiàn)word文檔轉(zhuǎn)pdf并添加水印的方法詳解
- java pdf加水印的方法
- 如何通過javacv實(shí)現(xiàn)圖片去水印(附代碼)
- 如何通過Java添加水印到Word文檔
- Java實(shí)現(xiàn)給圖片添加圖片水印,文字水印及馬賽克的方法示例
- Java用自帶的Image IO給圖片添加水印
相關(guān)文章
SpringBoot整合MyBatis四種常用的分頁(yè)方式(詳細(xì)總結(jié))
這篇文章詳細(xì)給大家總結(jié)了SpringBoot整合MyBatis四種常用的分頁(yè)方式,文中通過代碼示例為大家介紹的非常詳細(xì),需要的朋友可以參考下2023-07-07
SpringBoot整合Redis實(shí)現(xiàn)常用功能超詳細(xì)過程
這篇文章主要介紹了SpringBoot整合Redis實(shí)現(xiàn)常用功能,登陸功能是每個(gè)項(xiàng)目必備的功能吧,但是想設(shè)計(jì)好,卻是很難,下面介紹兩種登陸功能的解決方式,需要的朋友可以參考下2022-08-08
關(guān)于任務(wù)調(diào)度框架quartz使用(異常處理,解決恢復(fù)后多次調(diào)度處理)
這篇文章主要介紹了關(guān)于任務(wù)調(diào)度框架quartz使用(異常處理,解決恢復(fù)后多次調(diào)度處理),具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2023-12-12
在2023idea中實(shí)現(xiàn)SpringBoot的IoC和AOP的方法
這篇文檔詳細(xì)介紹了如何在Spring Boot中實(shí)現(xiàn)IoC(控制反轉(zhuǎn))和AOP(面向切面編程),深入探討了AOP的基本概念,包括AOP的作用、優(yōu)勢(shì)以及實(shí)現(xiàn)方式,最后,它提到了AOP的注解,如@Aspect、@Pointcut、@Before、@After、@AfterReturning、@AfterThrowing和@Around2024-11-11
SpringBoot?Knife4j框架&Knife4j的顯示內(nèi)容的配置方式
Knife4j框架是基于Swagger2開發(fā)的在線API文檔生成工具,主要功能包括自動(dòng)生成API文檔、接口文檔展示、接口測(cè)試工具、接口權(quán)限控制和在線調(diào)試,該框架支持通過注解自動(dòng)生成詳細(xì)的接口文檔,開發(fā)者可以直接在文檔界面進(jìn)行接口測(cè)試和調(diào)試2024-09-09
用Java集合中的Collections.sort方法如何對(duì)list排序(兩種方法)
本文通過兩種方法給大家介紹java集合中的Collections.sort方法對(duì)list排序,第一種方式是list中的對(duì)象實(shí)現(xiàn)Comparable接口,第二種方法是根據(jù)Collections.sort重載方法實(shí)現(xiàn),對(duì)collections.sort方法感興趣的朋友一起學(xué)習(xí)吧2015-10-10
java實(shí)現(xiàn)上傳文件類型檢測(cè)過程解析
這篇文章主要介紹了java實(shí)現(xiàn)上傳文件類型檢測(cè)過程解析,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2019-12-12
SpringCloud Gateway的熔斷限流配置實(shí)現(xiàn)方法
Spring Cloud Gateway支持通過配置熔斷和限流機(jī)制來保證服務(wù)的穩(wěn)定性和可用性,可通過Hystrix和Resilience4j兩種方式實(shí)現(xiàn)。Hystrix通過注解和配置文件實(shí)現(xiàn)熔斷限流,Resilience4j通過編程式配置實(shí)現(xiàn)2023-04-04
java charAt()返回?cái)?shù)值型的使用示例
本文主要介紹了java charAt()返回?cái)?shù)值型的使用示例,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2024-11-11

