贾斯珀报告创build – 抑制和隐藏分页标题

我正在开发一个Java应用程序,以从iReports中创build的“.jasper”报告文件生成报告。 当报告以PDF生成时,我想保留每个单独页面上的列标签和分页信息。 但是,作为Excel电子表格或纯HTML导出时,我只需要列标题一次。 任何人都可以提出的设置,我可以通过Java编程的Jasper API来处理这个?

您需要在导出器中设置几项设置才能将其导出为一个页面:

reportExporter.setParameter(JRXlsExporterParameter.IS_REMOVE_EMPTY_SPACE_BETWEEN_ROWS, Boolean.TRUE); reportExporter.setParameter(JRXlsExporterParameter.IS_ONE_PAGE_PER_SHEET, Boolean.FALSE); 

现在这只能让你的一部分。 由于它仍然每页都会打印页眉和页脚。 您需要向报告添加一个布尔参数,以指示是否打印这些波段。 你可以在乐队的printWhenExpression设置它。

您可以像下面那样有条件地添加JRParameter.IS_IGNORE_PAGINATION ,以便在导出为ex​​cel时禁止生成列标题。 适用于Jasper Reports 5.5。

 HashMap<String, Object> parameters = new HashMap<String, Object>(); parameters.put(JRParameter.IS_IGNORE_PAGINATION, Boolean.TRUE); JasperPrint jasperPrint = JasperFillManager.fillReport(compiledReport, parameters, (jrDataSource == null) ? new JREmptyDataSource() : jrDataSource);