我想知道的是,可以使用Java外部应用程序更改iReport中字段的属性值。
例如,首先我创建一个报告名称abc.jrxml。这是abc.jrxml文件的XML代码的一部分。
<reportElement x="117" y="2" width="65" height="20" uuid="2f281676-e098-4213-b1d3-57b845960b2a"/>
我想更改该值:x =“ 117”更改为x =“ 200”。height =“ 20”到height =“ 25”。我想通过Java命令尝试一下。这可能与否。如果可能的话,我该怎么做。
正如Alex K.指出的那样,使用Java应用程序更改属性的最佳方法是使用Jasper Reports API创建Reports。
例如,在对http://community.jaspersoft.com/questions/525188/dynamic-width-textfied- parameter的一个答案中, 在生成报告之前更改了对象的宽度:
JasperDesign design = xmlLoader.loadXML(..jrxmlStream..); JRElement[] elements = design.getDetail().getElements(); String elementKey = ..key of element to modify..; int newWidth = ..new element width..; for (int i = 0; i < elements.length; i++) { JRDesignElement element = (JRDesignElement) elements[i]; if (elementKey.equals(element.getKey())) { element.setWidth(newWidth); } }
你还可以使用setHeight,setX()且setY()更改的元素属性。
setHeight
setX()
setY()
此处提供了更多信息:http : //community.jaspersoft.com/wiki/jasperreports-library- reference-materials