我需要使用Jasperreports以Excel格式生成报告。我正在使用iReports 3.7.0 除了空单元格的大小外,生成的报告没有任何问题。
有人可以告诉我们如何避免突出显示的细胞被放大。正常细胞也比它们的含量稍大。
答案 0 :(得分:14)
另外,当你需要将Japser导出到XLS时,我会说坚持基础。我的意思是没有图形,等等。
上述解决方案适用于从iReport生成XLS。
如果您想通过程序生成XLS;使用以下代码
exporter = new JRXlsExporter();
exporter.setParameter(JRXlsExporterParameter.IS_COLLAPSE_ROW_SPAN, Boolean.TRUE);
exporter.setParameter(JRXlsExporterParameter.IS_REMOVE_EMPTY_SPACE_BETWEEN_COLUMNS, Boolean.TRUE);
exporter.setParameter(JRXlsExporterParameter.IS_REMOVE_EMPTY_SPACE_BETWEEN_ROWS, Boolean.TRUE);
exporter.setParameter(JRXlsExporterParameter.IS_ONE_PAGE_PER_SHEET, Boolean.FALSE);
exporter.setParameter(JRXlsExporterParameter.IS_DETECT_CELL_TYPE, Boolean.FALSE);
exporter.setParameter(JRXlsExporterParameter.IS_WHITE_PAGE_BACKGROUND, Boolean.FALSE);
exporter.setParameter(JRXlsExporterParameter.IS_IGNORE_GRAPHICS, Boolean.TRUE);
答案 1 :(得分:9)
我得到了答案。想与他人分享。以下是设置。
答案 2 :(得分:2)
此外 - 如果您要部署到jasperserver,则可以在报告中设置自定义属性。 (iReport不会自动执行此操作)
在主报表元素的属性中添加:
net.sf.jasperreports.export.xls.collapse.row.span
net.sf.jasperreports.export.xls.remove.empty.space.between.columns
net.sf.jasperreports.export.xls.remove.empty.space.between.rows
并将它们全部设置为true