栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

Java 在Word中设置多行(平铺)文本水印

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

Java 在Word中设置多行(平铺)文本水印

在Word设置水印时,通常设置文本字样的水印只能在页面中设置一个水印字样,若需要在Word中设置平铺水印效果,可以参考以下方法。

使用工具:Free Spire.Doc for Java(免费版)

Jar下载及导入:

1. 手动下载导入,解压下载后的jar包,将lib文件夹下的Spire.Doc.jar文件导入java程序;

2. 创建Maven程序时,在pom.xml中配置maven仓库路径并指定Free Spire.Doc for Java的依赖,如下:

    
                
      com.e-iceblue            
      http://repo.e-iceblue.cn/repository/maven-public/        
        
 
 
   
         
      e-iceblue     
         spire.doc.free      
         2.7.3    
   
  

Jar导入结果:


Java 代码

 import com.spire.doc.*;
 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 TextWatermark {
     public static void main(String[] args) {
         //加载示例文档
         document doc = new document();
         doc.loadFromFile("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.red);
         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);
             //获取页眉
             header = section.getHeadersFooters().getHeader();
             Paragraph paragraph1;
             for (int i = 0; i < 4; i++) {
                 //添加4个段落到页眉
                 paragraph1 = header.addParagraph();
                 for (int j = 0; j < 3; j++) {
                     //复制艺术字并设置多行多列位置
                     shape = (ShapeObject) shape.deepClone();
                     shape.setVerticalPosition(50 + 200 * i);
                     shape.setHorizontalPosition(20 + 160 * j);
                     paragraph1.getChildObjects().add(shape);
                 }
             }
         }
 
         //保存文档
         doc.saveToFile("result.docx", FileFormat.Docx_2013);
         doc.dispose();
     }
 }

水印添加效果:


转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/236611.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号