使用Aspose.Words for Java完成复杂Word与PDF的导出
使用Aspose.Words for Java 可以导出复杂WORD PDF HTML 多种数据格式
官方下载地址:http://www.aspose.com/java/word-component.aspx我所用的版本是Aspose.Words.jdk16.jar
先看效果图
1-对数据行的导出,分别是PDF与WORD格式
2-对类似于个人简历的数据导出带图片,分别是PDF与WORD格式
[size=large]
使用该组件一共分为4个步骤
1-定义模板
2-加载模板
3-填充数据
4-设置导出格式并导出
接下来我们按照以上4个步骤进行报表的导出
首先定义模板(可以再附件中下载)这里只介绍最后一个个人简历的模板
一个普通的自定义word就可以
«TableStart:Employees»
«TableEnd:Employees»
这一对标记代表一个数据单元 Employees 是可以自定义的 填充数据源时要对应上
其他的就好理解了 比如«FirstName» 就是数据源中的属性
接下来开始我们的导出之旅吧!!!!
第一步定义一个导出的抽象类
Java代码
packagecom.epkj.words;
importorg.springframework.stereotype.Component;
importcom.aspose.words.Document;
@Component("ProcessWord")
publicabstractclassProcessWord {
publicabstractDocument execute(String templatePath)throwsException;
}
package com.epkj.words;
import org.springframework.stereotype.Component;
import com.aspose.words.Document;
@Component("ProcessWord")
public abstract class ProcessWord {
public abstract Document execute(String templatePath) throws Exception;
}
第二部写一个具体的实现类
Java代码
packagecom.epkj.words;
importjava.io.FileInputStream;
importjava.io.IOException;
importjava.util.ArrayList;
importjava.util.HashMap;
importjava.util.List;
importjava.util.Map;
importorg.springframework.stereotype.Component;
importcom.aspose.words.Document;
/**
* 带图片的导出
*/
@Component("EmployeesReportDemo")
publicclassEmployeesReportDemoextendsProcessWord {
@Override
publicDocument execute(String templatePath)throwsException {
//1 读取模板
Document doc =newDocument(templatePath +"/"+"EmployeesReportDemo.doc");
String imagePath = templatePath +"/"+"employees.j