How to stretch a text field relative to data width in Jasper Reports

两盒软妹~` 提交于 2019-11-28 04:33:38

问题


I have a text field followed by a static text field and I am trying to do 2 things with it:

  1. Get the text field to stretch horizontally (not wrap) when text is longer then the field width and
  2. Push the static text field right when the text field to the left of it stretches

Both of the fields are contained within a frame.

I have both fields set to positionType=float and the text field set to stretchWithOverflow=true, which enable text to wrap vertically but not stretch horizontally.

Is it possible to achieve 1 and 2 above? If so How?


回答1:


Instead of having 2 text fields (dynamic and static), you can have 1 text field with value as $F{Field} + "statix text". This will probably fix your issue. Also, you can set the "width" and "stretch with overflow" properties, as per your requirements.




回答2:


Well it's bad news!! According to Jaspersoft's documentation on stretching fields it is not possible to stretch the width of a field:

"Usually, the stretching process refers to the height adjustment only. When stretching report elements, adjusting the width could affect also the page width and raise unexpected errors at runtime (for instance, truncated information could be printed out on pages). This is why stretching an element let its width unchanged, while its height gets definitely enlarged in order to make room for all information that have to be displayed." (Jaspersoft documentation [v4.5.0], 2011)

However a solution to the original issue can be found here thanks to @mdahlman



来源:https://stackoverflow.com/questions/8979134/how-to-stretch-a-text-field-relative-to-data-width-in-jasper-reports

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!