动色碧玉

Dynamic color jasper

我正在 Jaspersoft Studio 6.4.0 上开发报告,我使用 JavaBeans 作为数据源。

我需要动态更改文本字段的背景颜色。事实上,我的 bean 中有一个颜色变量,它是这样计算的:

Color resultColor = new Color(255, (int) (ratio * 5.1), 0);

其中比率是使用文本字段中的变量计算的双精度值。

我有两种可能,第一种是为我的 jasper 报告赋予颜色,第二种是计算绿色和红色的比例并将颜色设置为 条件样式。 我不知道我可以把这种动态颜色放在哪里,你能帮我吗?

我刚刚找到解决方案:

<propertyExpression name="net.sf.jasperreports.style.backcolor"> 
    <![CDATA["#" + net.sf.jasperreports.engine.util.JRColorUtil.getColorHexa($F‌​{resultColor})]]> 
</propertyExpression> 

用resultColor一个java.awt.color。您需要将其放入报告元素中。

我找到了解决方案here