Setting the Size and Position of a Report
The x and y attributes of <reportElement> specify the x and y coordinates (in
pixels) of the element within the band. An initial common mistake is to assume that
the x and y coordinates, which are defined here, are absolute for the page. Again,
the x and y coordinates, defined by the x and y attributes, are relative to the <band>
where the element is contained. Coordinates (0, 0) are at the top left of the band. The
x and y attributes of <reportElement> are required.
The width and height elements of <reportElement> , unsurprisingly, define the
width and height (in pixels) of the element, respectively. The width and height
attributes of <reportElement> are required. We have already seen several examples
demonstrating the use of the x , y , width , and height elements of <reportElement> .
Here is the JRXML template for the report we created in Chapter 3:
PUBLIC "-//JasperReports//DTD Report Design//EN"
<reportElement x="20" y="0" width="200" height="20"/>
<text><![CDATA[If you don't see this, it didn't work]]></text>
In this example, the static text will appear 20 pixels from the left margin, aligned with
the top of the band. Refer to Chapter 3 to see a rendered report based on this template.
The positionType attribute defines the element's position when the band is
stretched. As can be seen in the table overleaf, there are three legal values for this
attribute, namely, Float , FixRelativeToTop , and FixRelativeToBottom . Let us
modify the example we showed in the Allowing Text Fields to Stretch to Accommodate
their Data section by adding some static text right under the existing text field. We
will see the effect the different positionType values have on its positioning.