Java如何給Word文檔添加多行文字水印
前言
我在以往的文章中曾介紹過如何給Word文檔添加文本水印和圖片水印,及怎樣刪除文檔中的水印。關於文本水印,之前那篇教程裡主要指的是單行字體的水印,而在操作Word文檔時,有時也會碰到需要添加多行文字水印的情況。所以,本文將演示如何使用Java程序來為Word文檔添加多行文字水印。
代碼測試環境:
- Intellij Idea2019.1
- JDK 1.8.0
- Spire.Doc.jar
Jar包獲取及導入
方法一:手動將Jar包導入IDEA。具體步驟如下:
步驟 1:在 E-iceblue中文官網註冊並登陸賬號,進入Free Spire.Doc for Java下載頁面下載產品包。
步驟 2:解壓產品包,找到lib文件下的Spire.Doc.jar。
步驟 3:將Spire.Doc.jar手動導入IDEA中。
方法二: 通過Maven倉庫安裝導入產品及相關依賴。創建一個Maven應用程序,在pom.xml文件中配置Maven倉庫路徑及指定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中,您需點擊”Import Changes”即可導入JAR包;在Eclipse中,則需要點擊”Save”按鈕。
代碼演示
Free Spire.Doc for Java通過在Word頁眉中添加藝術字來實現為文檔添加多行文字水印。具體代碼如下:
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"); //添加藝術字並設置大小 ShapeObject shape = new ShapeObject(doc, ShapeType.Text_Plain_Text); shape.setWidth(60); shape.setHeight(20); //設置藝術字文本內容、顏色,位置及樣式 shape.setVerticalPosition(30); shape.setHorizontalPosition(20); shape.setRotation(315); shape.getWordArt().setText("內部使用"); 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的頁眉 header = section.getHeadersFooters().getHeader(); Paragraph paragraph1; for (int i = 0; i < 4; i++) { //添加段落到頁眉 paragraph1 = header.addParagraph(); for (int j = 0; j < 3; j++) { //復制藝術字並設置多行多列位置 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); } }
添加效果:
總結:
通過運用以上代碼,多行文字水印能夠完整清晰準確地被插入到Word文檔中。若對代碼或Jar包導入有疑問的,可評論或私信。
到此這篇關於Java如何給Word文檔添加多行文字水印的文章就介紹到這瞭,更多相關Java如何添加文字水印內容請搜索WalkonNet以前的文章或繼續瀏覽下面的相關文章希望大傢以後多多支持WalkonNet!
推薦閱讀:
- Java實現給Word文件添加文字水印
- Java如何實現讀取txt文件內容並生成Word文檔
- C#實現添加多行文本水印到Word文檔
- Java實現在Word中嵌入多媒體(視頻、音頻)文件
- Java實現添加條碼或二維碼到Word文檔