是否可以在jasper报告中动态修改明细区域的高度?因为在我的应用程序中我需要创建pdf文档。我在该主文档的详细信息区域内使用了一个主文档,因此我使用了一个子报表。子报表将以java bean为数据源。此Java Bean返回字段列表。因此,如果我们固定band的大小,那么一段时间内所有值都不会在文档中伸展。是否可以动态更改细节范围。
最佳答案
您可以使用JRXmlLoader.load()
从模板文件中创建JasperDesign
对象。在结果上使用类似getPageHeader()
的方法来检索所需的波段,并将返回值强制转换为JRDesignBand
:返回的对象实现JRBand
,但对于JasperDesign
,它始终是JRDesignBand
。在JRDesignBand
类中,有一个setHeight()
方法。
最后,使用JasperCompileManager.compileReport()
从(现在已修改的)JasperReport
创建一个JasperDesign
。