欢迎来到代码驿站!

JAVA代码

当前位置:首页 > 软件编程 > JAVA代码

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

时间:2021-03-27 09:29:57|栏目:JAVA代码|点击:

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二维数组查找功能代码实现

栏    目:JAVA代码

下一篇:很详细的Log4j配置步骤

本文标题:Java在Word中添加多行图片水印

本文地址:http://www.codeinn.net/misctech/88948.html

推荐教程

广告投放 | 联系我们 | 版权申明

重要申明:本站所有的文章、图片、评论等,均由网友发表或上传并维护或收集自网络,属个人行为,与本站立场无关。

如果侵犯了您的权利,请与我们联系,我们将在24小时内进行处理、任何非本站因素导致的法律后果,本站均不负任何责任。

联系QQ:914707363 | 邮箱:codeinn#126.com(#换成@)

Copyright © 2020 代码驿站 版权所有