1. 简单的word生成
一般情况下 不会有word生成的需求 常规情况下导出word都是基于模板的
这边仅简单介绍下word的生成
aspose生成PDF也很简单 一行代码就可以了
详见下述方法
2. word/pdf生成方法
package com.example.handler;
import com.aspose.words.*;
import com.example.global.Ret;
import lombok.SneakyThrows;
import lombok.extern.slf4j.Slf4j;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
/**
* @author LWB
* @Description 导出word
*/
@Slf4j
@RestController
@RequestMapping("word")
public class ExportWordHandler {
@SneakyThrows
@PostMapping("createWord")
public Ret createWord(){
Document doc = new Document();
DocumentBuilder builder = new DocumentBuilder(doc);
//新增1行文本
builder.writeln("Hello World!Hello World!Hello World!Hello World!Hello World!Hello World!Hello World!Hello World!Hello World!");
//新增1空白行
builder.writeln();
//新增1行文本 多个字符串拼接而成
builder.write("我在测试生成word.");
builder.write("是吗? 我来看看");
//显示当前页码 总页数
builder.writeln();
builder.writeln();
builder.write("当前页 ");
builder.insertField("PAGE", "");
builder.write(" ,共 ");
builder.insertField("NUMPAGES", "");
builder.write(" 页");
//新开1页
builder.insertBreak(BreakType.PAGE_BREAK);
//插入1个表格
//开始绘制表格
Table table = builder.startTable();
//第1行
//插入第1个单元格
builder.insertCell();
builder.write("姓名");
//插入第2个单元格(同一行)
builder.insertCell();
builder.write("孙悟空");
//插入第3个单元格
builder.insertCell();
builder.write("出生日期");
//插入第4个单元格
builder.insertCell();
builder.write("500年前");
//结束当前行
builder.endRow();
//插入第2行
//插入第1个单元格
builder.insertCell();
builder.write("爱好");
//插入第2个单元格(同一行)
builder.insertCell();
builder.write("香蕉");
//插入第3个单元格
builder.insertCell();
builder.write("兴趣");
//插入第4个单元格
builder.insertCell();
builder.write("72变");
//结束当前行
builder.endRow();
//表格宽度自适应
table.autoFit(AutoFitBehavior.AUTO_FIT_TO_CONTENTS);
//结束表格绘制
builder.endTable();
//显示当前页码 总页数
builder.writeln();
builder.writeln();
builder.write("当前页 ");
builder.insertField("PAGE", "");
builder.write(" ,共 ");
builder.insertField("NUMPAGES", "");
builder.write(" 页");
doc.updateFields();
doc.save("C:/Users/Administrator/Desktop/aspose/createWord.docx", SaveFormat.DOCX);
doc.save("C:/Users/Administrator/Desktop/aspose/createWord.pdf", SaveFormat.PDF);
return Ret.success();
}
}
3. 生成效果
这是生成的word
这是生成的PDF
本文暂时没有评论,来添加一个吧(●'◡'●)