Java在Word里面添加多行水印图片

coding

Word中设置水印效果时,不论是文本水印或者是图片水印都只能添加单个文字或者图片到Word页面,效果比较单一,本文通过Java代码示例介绍如何在页面中添加多行图片水印效果,即水印效果以多个图片平铺到页面。

思路及方法:获取Word页眉,添加图片到页眉段落,并复制图片。

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

import com.spire.doc.*;

import com.spire.doc.documents.Paragraph;

import com.spire.doc.documents.TextWrappingStyle;

import com.spire.doc.fields.DocPicture;

//java项目源码www.fhadmin.org

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里面添加多行水印图片 的全部内容, 来源链接: utcz.com/z/509848.html

回到顶部