JasperReports - 每个区域的条件样式?

时间:2011-09-30 15:13:57

标签: internationalization jasper-reports ireport

有没有办法根据报表参数区域设置使用不同的样式或重新定义样式?我需要修改某些语言的字体大小。

1 个答案:

答案 0 :(得分:1)

我过去使用外部样式模板实现了这一点。有sample on jasperforge说明了如何执行此操作。

将样式移动到外部模板后,您可以创建特定于语言环境的模板。模板机制允许您继承和覆盖特定样式,因此特定于语言环境的版本不会过度膨胀。我上面链接的示例包括继承和覆盖基本样式。

在报告中,您可以在渲染时加载相应的模板。

一种简单的方法是:

  • 提供要用作参数的模板的路径 报告

  • 在jrxml文件中包含一个引用该模板的模板标记 参数:

    <模板><![CDATA [$ P {TEMPLATE_PATH}]]>< /模板>

然后,在呈现报告的代码中,只需为报告区域设置适当地设置TEMPLATE_PATH参数。

同样,链接的文档提到了如何执行此操作。