1,word模板里插入文本域,不同的工具,域的类别不一样。wps的域类别叫做 邮件合并
注意的是:文本域的格式就是最终图片显示的格式,例子里的是居中对齐



2,模板制作好,接着写代码。依赖如下
<dependency>
<groupId>com.aspose</groupId>
<artifactId>aspose-words</artifactId>
<version>23.6</version>
</dependency>
3,代码很简单
public static void main(String[] args) throws Exception {
// 1. 加载模板
Document doc = new Document("D:\\work\\test\\template.doc");
DocumentBuilder builder = new DocumentBuilder(doc);
// 2. 定位到书签位置(假设模板中有一个名为 "images" 的书签)
builder.moveToMergeField("images");
// 3. 插入多张图片
List<String> imagePaths = Arrays.asList(
"D:\\work\\test\\111.png",
"D:\\work\\test\\222.png",
"D:\\work\\test\\333.png",
"D:\\work\\test\\333.png"
);
for (String path : imagePaths) {
File file = new File(path);
BufferedImage image = ImageIO.read(file);
builder.insertImage(image,150,60);
// 换行
builder.writeln();
}
// 4. 保存文档
doc.save("D:\\work\\test\\output.doc");
}
结果如下:插入了4张图片。我用的都是一个图片,只不过多复制了几个,改了文件名
