2009-12-10 62 views
9

我需要使用Jasperreports以Excel格式生成报告。我正在使用iReports 3.7.0 生成的报告除空白单元格的大小外没有其他问题。贾斯珀报告Excel输出

alt text

有人可以告诉如何避免被放大高亮显示的单元格。正常细胞也比它们的内容稍大。

回答

9

我得到了答案。想与他人分享。以下是设置。

alt text

13

而且,当你需要Japser导出到XLS我要说坚持基础。我的意思是没有图形,等等。

上述解决方案适用于从iReport生成XLS。

如果您想生成XLS thru程序;使用以下代码

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); 
+0

感谢。我使用了最新的JExcelExporter软件包。 – Nayn 2010-07-01 19:48:24

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

+0

也使用'net.sf.jasperreports.print.keep.full.text'来避免截断溢出值 – KCD 2013-01-08 21:23:53