Skip to main content
Pentaho Documentation

Dynamic Element Positioning in Templates

Use the following methods to accommodate for multiple page sizes in reports:

Percentages

Express the height, width, x position, and y position in percentages.

Block, inline, or row

Switch the band’s layout mode from canvas to either block, inline or row:

layout-mode value
canvas Uses the x and y position to place the element in the band.
block Stacks elements vertically according to the layer order in a band; width is set to 100%.
inline Stacks elements horizontally according to the layer order in a band; width is determined by the length of the text in the field, and wraps within the band.
row Stacks elements horizontally in one row according to the layer order in the band.

Dynamic height message elements

Set dynamic-height=true on message elements. This will allow the element size to grow according to line height. Also, setting the following Reporting engine configuration option will allow the element size to grow according to the font size used:

org.pentaho.reporting.engine.classic.core.layout.​fontrenderer.UseMaxCharBounds = true

Proportional column widths

To support varying window sizes in a Web browser, enable the use of proportional column widths so that the resulting table will have a width of 100% and the columns will have the proportional equivalent of their static widths as width. The relevant Reporting engine option to set this globally is:

org.pentaho.reporting.engine.classic.core.modules.​output.table.html.ProportionalColumnWidths = true