我正在使用动态 jasper 5.0.3 生成 xlsx 文件。当我在 SimpleXlsxReportConfiguration 中设置为像这样包装文本时:
configuration.setWrapText(true)
我在行中遇到列高问题,其中至少一个单元格的内容宽度大于标题宽度。那些行比其他行高。您可以在下面看到它(第 12 和 13 行):
http://i.stack.imgur.com/KNPCK.png (本人名气太小,直接发图吧)
我试图通过多种方式强制行高,但没有结果。我使用 FastReportBuilder 并尝试过:
reportBuilder.setDetailHeight(15);
reportBuilder.setAllowDetailSplit(false);
我试过这样设置列样式:
new StyleBuilder(false).setStretching(Stretching.NO_STRETCH).build();
将拉伸(stretch)类型更改为 RELATIVE_TO_TALLEST_OBJECT 或 RELATIVE_TO_BAND_HEIGHT 也不起作用。
在配置中我有那些行:
configuration.setRemoveEmptySpaceBetweenRows(true);
configuration.setCollapseRowSpan(true);
我注意到的一件事是,当我设置时:
configuration.setCollapseRowSpan(false);
报告看起来像这样:
http://i.stack.imgur.com/JUauL.png
您会注意到前面示例(12 和 13)中的那些行由 2 行组成,但添加了 rowspan。似乎即使自动换行属性已关闭,动态碧 Jade 也会计算行高,就好像它没有关闭一样。
在这种情况下是否可以强制动态 jasper 为所有单元格设置相同的高度?
最佳答案
我试图通过使用实现 PDF 表格中所有单元格的相同高度 reportBuilder.setDetailHeight(50) 方法。我得到了预期的结果。
关于java - Dynamic-jasper:列高与 configuration.setWrapText(true),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32777995/