刚完整解决了这个问题:把多个jasper的报表文档合并到一个word文档中,现在整理一下。
1. 使用JRExporterParameter.JASPER_PRINT_LIST的参数来将多个jasperPrint合并输出,具体方法如下:
public static void exportReportListToRtf(List jasperPrints,String wordReportFileName){
JRRtfExporter rtfExporter = new JRRtfExporter();
rtfExporter.setParameter(JRExporterParameter.JASPER_PRINT_LIST, jasperPrints);
rtfExporter.setParameter(JRExporterParameter.OUTPUT_FILE_NAME, wordReportFileName);
try {
rtfExporter.exportReport();
log.debug("Genertate the RTF report ok! :" + wordReportFileName);
} catch (JRException e) {
e.printStackTrace();
log.error("Generate the RTF report file EROR!");
}
}
解决方法来源与网上的资料,见下图:
2. 合并报表后的表格末尾边框出现缺失现象解决办法
用ireport软件,修改jrxml模板文件,在columnFooter区域内,写一个无边框的文本即可,曾经试过输出为pdf格式的文档,就没碰见过表格边框缺少问题,但是到了word里就不行,不知为什么。
3. 上面资料提到乱码问题,但是我生成的word文档没发现乱码,生成pdf到时没有中文显示,经过修改jrxml模板文档并为所有的text字段指定字体,pdf也能正常显示了。