在 JasperReports 中,您始终为定位报表元素设置绝对 x 和 y 坐标。例如,以下示例呈现一个黑色矩形(左上角 (0,0)),其中包含一个从 x=70 开始的白色文本字段“Hello World”:
<rectangle>
<reportElement x="0" y="0" width="557" height="20" backcolor="#000000" />
<graphicElement fill="Solid">
<pen lineWidth="0"/>
</graphicElement>
</rectangle>
<textField>
<reportElement x="70" y="2" width="100" height="14" style="pageLayoutFont"/>
<textElement textAlignment="Left" verticalAlignment="Middle" />
<textFieldExpression class="java.lang.String">
<![CDATA["Hello World"]]>
</textFieldExpression>
</textField>
现在,我想使用 DynamicReports 实现相同的目标。它应该与此类似:
report().addDetail(
cmp.rectangle()
.setDimension(557, 20).setStyle(...),
cmp.text("Hello World").setStyle(...)
);
但是,我找不到确定定位的方法(在上面的 Java 示例中,文本呈现在矩形下方,而不是在矩形内。