1.新建一个word文档

2.给插入图片的地方设置书签

3,设置书签

二,项目

1,2步的引入依赖以及加载授权文件同上一篇

3,获取图片路径插入到word中并生成新的word文档

新文档中,每行显示两张图片

public static void main(String[] args) throws Exception {
// 验证License
if (!getLicense()) {
return;
}
//模板word
String template = "E:\\test\\temp.docx";
//目标word
String destdoc = "E:\\test\\edit.docx";
//定义文档接口
Document doc = new Document(template);
//图片路径
List<String> pathList = new ArrayList<>();
pathList.add("E:\\test\\image1.jpg");
pathList.add("E:\\test\\image2.jpg");
pathList.add("E:\\test\\image3.jpg");
pathList.add("E:\\test\\image4.jpg");
pathList.add("E:\\test\\image5.jpg"); DocumentBuilder builder = new DocumentBuilder(doc);
     //定位到指定位置
builder.moveToBookmark("pics"); double length = pathList.size();
for (int i = 0; i < Math.ceil(length/2.0); i++){
for (int j = 0; j < 2; j++){
int index = i*2 + j;
if (index < pathList.size()){
if (i == 0){
if (j == 0){
builder.insertImage(pathList.get(index), RelativeVerticalPosition.MARGIN,1, RelativeHorizontalPosition.MARGIN,130,200,220,WrapType.INLINE);
}else {
builder.insertImage(pathList.get(index),RelativeVerticalPosition.MARGIN,230,RelativeHorizontalPosition.MARGIN,130,200,220,WrapType.INLINE);
}
}else {
if (j == 0){
builder.insertImage(pathList.get(index),RelativeVerticalPosition.MARGIN,1,RelativeHorizontalPosition.MARGIN,(130+220*i+10*i),200,220,WrapType.INLINE);
}else {
builder.insertImage(pathList.get(index),RelativeVerticalPosition.MARGIN,230,RelativeHorizontalPosition.MARGIN,(130+220*i+10*i),200,220,WrapType.INLINE);
}
}
}
builder.write(" ");
}
builder.writeln();
}
//调用接口
doc.save(destdoc);
System.out.println("完成");
}

Aspose.words Java基于模板生成word之循环图片的更多相关文章

  1. Aspose.words Java基于模板生成word之纯文本内容

    一,创建word模板 1.新建一个word文档 2.分别给四个参数设置域 (1)将鼠标置于想要设置域的地方 (2)设置域名 (3)设置好之后如下图所示 二,项目 1,引入maven依赖 <dep ...

  2. Java利用poi生成word(包含插入图片,动态表格,行合并)

    转(小改): Java利用poi生成word(包含插入图片,动态表格,行合并) 2018年12月20日 09:06:51 wjw_11093010 阅读数:70 Java利用poi生成word(包含插 ...

  3. Java 使用模板生成 Word 文件---基于 Freemarker 模板框架

    Java项目引入 Freemarker 插件自行完成. 步骤如下: .编写 Word 模板,并将模板中要用代码动态生成数据用 Freemarker 变量取代,即${变量名},如${username}: ...

  4. java基于feemarker 生成word文档(超级简单)

    问题由来: 开发个新需求,需要按规定导出word文档,文档截图如下 因为之前没做过这个,一脸懵B啊,导出excel和txt倒是经常接触到,对于这个word这种格式不严谨的文件怎么处理呢? 技术选型:可 ...

  5. Java根据模板生成Word文档

    一,首先制作模板 1.先做一个Word文档, 2.打开Word,然后另存为*.xml文件 3.最后修改*.xml文件的后缀名为*.ftl 二,打开项目编辑器Idea,在pom文件中引入相关架包依赖(我 ...

  6. 利用html模板生成Word文件(服务器端不需要安装Word)

    利用html模板生成Word文件(服务器端不需要安装Word) 由于管理的原因,不能在服务器上安装Office相关组件,所以只能采用客户端读取Html模板,后台对模板中标记的字段数据替换并返回给客户端 ...

  7. C#通过模板导出Word(文字,表格,图片)

    C#通过模板导出Word(文字,表格,图片)   C#导出Word,Excel的方法有很多,这次因为公司的业务需求,需要导出内容丰富(文字,表格,图片)的报告,以前的方法不好使,所以寻找新的导出方法, ...

  8. Java基于OpenCV实现走迷宫(图片+路线展示)

    Java基于OpenCV实现走迷宫(图片+路线展示) 由于疫情,待在家中,太过无聊.同学发了我张迷宫图片,让我走迷宫来缓解暴躁,于是乎就码了一个程序出来.特此记录. 原图: 这张图,由于不是非常清晰, ...

  9. Java根据Freemarker模板生成Word文件

    1.  准备模板 模板 + 数据 = 模型 1.将准备好的Word模板文件另存为.xml文件(PS:建议使用WPS来创建Word文件,不建议用Office) 2.将.xml文件重命名为.ftl文件 3 ...

随机推荐

  1. Spring源码分析(一)基本介绍

    摘要:本文结合<Spring源码深度解析>来分析Spring 5.0.6版本的源代码.若有描述错误之处,欢迎指正. 前言 作为一名开发人员,阅读源码是一个很好的学习方式.本文将结合< ...

  2. js replace 全局替换

    js 的replace 默认替换只替换第一个匹配的字符,如果字符串有超过两个以上的对应字符就无法进行替换,这时候就要进行一点操作,进行全部替换. <script language="j ...

  3. 在CentOS7.6上安装自动化运维工具Ansible以及playbook案例实操

    前言 Ansible是一款优秀的自动化IT运维工具,具有远程安装.远程部署应用.远程管理能力,支持Windows.Linux.Unix.macOS和大型机等多种操作系统. 下面就以CentOS 7.6 ...

  4. uliweb框架数据库操作

    先安装数据库和相关的库文件 sudo aptitude install python-setuptools sudo easy_install SQLAlchemy sudo easy_install ...

  5. v$pwfile_user表

    SQL> select * from v$pwfile_users;select * from v$pwfile_users; USERNAME SYSDB SYSOP SYSAS------- ...

  6. QtGUI Module's Classes

    Qt GUI C++ Classes The Qt GUI module provides the basic enablers for graphical applications written ...

  7. django学习笔记(1)

    Django 特点 强大的数据库功能     用python的类继承,几行代码就可以拥有一个丰富,动态的数据库操作接口(API),如果需要你也能执行SQL语句 自带的强大的后台功能     几行简单的 ...

  8. 关于DFS与BFS

    DFS(深度优先搜索)   为无向图 DFS的过程类似于树的先序遍历. 请看图: DFS此图的过程为: 1.首先任意找一个未被便利过的顶点,例如从V1开始,由于率先访问了它,所以需要标记V1即已经访问 ...

  9. JMeter入门教程

    转自 http://blog.csdn.net/w565911788/article/details/7629787 1.Jmeter 概要描叙 jmeter 是一款专门用于功能测试和压力测试的轻量级 ...

  10. springboot之websocket,STOMP协议

    一.WebSocket 是 HTML5 开始提供的一种在单个 TCP 连接上进行全双工通讯的协议. WebSocket 使得客户端和服务器之间的数据交换变得更加简单,允许服务端主动向客户端推送数据.在 ...