Java在Word中添加多行圖片水印

Word中設置水印效果時,不論是文本水印或者是圖片水印都隻能添加單個文字或者圖片到Word頁面,效果比較單一,本文通過Java代碼示例介紹如何在頁面中添加多行圖片水印效果,即水印效果以多個圖片平鋪到頁面。(添加多行文字水印效果,可以查看這篇文章中的方法)

程序環境:使用spire.doc.jar,版本:3.9.0

Java代碼:

import com.spire.doc.*;
import com.spire.doc.documents.Paragraph;
import com.spire.doc.documents.TextWrappingStyle;
import com.spire.doc.fields.DocPicture;

public class ImageWatermark {
 public static void main(String[] args) {
  //加載Word文檔
  Document doc=new Document();
  doc.loadFromFile("input.docx");

  //加載圖片
  DocPicture picture = new DocPicture(doc);
  picture.loadImage("logo.png");
  picture.setTextWrappingStyle(TextWrappingStyle.Behind);//設置圖片環繞方式

  //遍歷所有section
  for (int n = 0; n < doc.getSections().getCount(); n++) {
   Section section = doc.getSections().get(n);

   //獲取section的頁眉
   HeaderFooter header = section.getHeadersFooters().getHeader();

   Paragraph paragrapg1;
   //獲取或添加段落
   if(header.getParagraphs().getCount()>0)
   {
    paragrapg1 = header.getParagraphs().get(0);
   }
   else
    {
     paragrapg1 = header.addParagraph();
    }

   //復制圖片,並添加圖片到段落
   for (int p = 0; p < 4; p++) {
    for (int q = 0; q < 3; q++) {
     picture = (DocPicture)picture.deepClone();
     picture.setVerticalPosition(50 + 150 * p);
     picture.setHorizontalPosition(10 + 140 * q);
     paragrapg1.getChildObjects().add(picture);
    }
   }
  }

  //保存文檔
  doc.saveToFile("output.docx", FileFormat.Docx_2013);
  doc.dispose();
 }
}

到此這篇關於Java在Word中添加多行圖片水印的文章就介紹到這瞭,更多相關Java添加圖片水印內容請搜索WalkonNet以前的文章或繼續瀏覽下面的相關文章希望大傢以後多多支持WalkonNet!

推薦閱讀: