Jasper reports 如何对齐stetched文本字段底部的文本字段?

Jasper reports 如何对齐stetched文本字段底部的文本字段?,jasper-reports,Jasper Reports,我在使用Jasper report时遇到问题 在我的报告中,我尝试对齐文本字段,如: ${name} ${field1} ${age} ${field2} ${address} ${field3} textField${name}能够stretchWithOverflow导致它与${field1}中断对齐 如果文本字段${name}拉伸,我希望得到一个结果,其中${fiel

我在使用Jasper report时遇到问题

在我的报告中,我尝试对齐文本字段,如:

${name}                      ${field1}
${age}                       ${field2}
${address}                   ${field3}
textField
${name}
能够
stretchWithOverflow
导致它与
${field1}
中断对齐

如果文本字段
${name}
拉伸,我希望得到一个结果,其中
${field1}
与该
${name}
拉伸到的最后一行对齐

${name}                      
${name}(stretched)           ${field1}
${age}                       ${field2}
${address}                   ${field3}

我读过很多论坛,但找不到解决方案。

您可以通过使用
positionType=“FixRelativeToBottom”
属性来实现这一点

示例

<?xml version="1.0" encoding="UTF-8"?>
<jasperReport xmlns="http://jasperreports.sourceforge.net/jasperreports" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://jasperreports.sourceforge.net/jasperreports http://jasperreports.sourceforge.net/xsd/jasperreport.xsd" name="csvTest" pageWidth="595" pageHeight="842" columnWidth="555" leftMargin="20" rightMargin="20" topMargin="20" bottomMargin="20" uuid="601103bc-66ab-45a5-8422-ccb6f3e02ec2">
    queryString>
        <![CDATA[]]>
    </queryString>
    <field name="name" class="java.lang.String"/>
    <field name="age" class="java.lang.String"/>
    <field name="adress" class="java.lang.String"/>
    <field name="field1" class="java.lang.String"/>
    <field name="field2" class="java.lang.String"/>
    <field name="field3" class="java.lang.String"/>
    <detail>
        <band height="60" splitType="Stretch">
            <textField isStretchWithOverflow="true">
                <reportElement positionType="Float" x="0" y="0" width="100" height="20" uuid="bf6b550c-f37d-4e10-b8dd-1d91c4e6905a"/>
                <textElement verticalAlignment="Bottom">
                    <font size="12"/>
                </textElement>
                <textFieldExpression><![CDATA[$F{name}]]></textFieldExpression>
            </textField>
            <textField>
                <reportElement positionType="Float" x="0" y="20" width="100" height="20" uuid="cbcc18ce-a1c8-4659-b30e-c1a360392b0a"/>
                <textElement verticalAlignment="Bottom">
                    <font size="12"/>
                </textElement>
                <textFieldExpression><![CDATA[$F{age}]]></textFieldExpression>
            </textField>
            <textField>
                <reportElement positionType="Float" x="0" y="40" width="100" height="20" uuid="ffda046d-87cc-4f51-8568-99c19a54ed7e"/>
                <textElement verticalAlignment="Bottom">
                    <font size="12"/>
                </textElement>
                <textFieldExpression><![CDATA[$F{adress}]]></textFieldExpression>
            </textField>
            <textField>
                <reportElement positionType="FixRelativeToBottom" x="100" y="0" width="100" height="20" uuid="2110cf81-a71d-45c0-9bd9-d26d69167860"/>
                <textElement verticalAlignment="Bottom">
                    <font size="12"/>
                </textElement>
                <textFieldExpression><![CDATA[$F{field1}]]></textFieldExpression>
            </textField>
            <textField>
                <reportElement positionType="FixRelativeToBottom" x="100" y="20" width="100" height="20" uuid="2c7fd4ec-324f-4c03-9b13-c3e1bb83d6ad"/>
                <textElement verticalAlignment="Bottom">
                    <font size="12"/>
                </textElement>
                <textFieldExpression><![CDATA[$F{field2}]]></textFieldExpression>
            </textField>
            <textField>
                <reportElement positionType="FixRelativeToBottom" x="100" y="40" width="100" height="20" uuid="6371e8da-43d8-43e6-86a3-65bedd87f030"/>
                <textElement verticalAlignment="Bottom">
                    <font size="12"/>
                </textElement>
                <textFieldExpression><![CDATA[$F{field3}]]></textFieldExpression>
            </textField>
            <line>
                <reportElement x="0" y="0" width="200" height="1" uuid="719e26b2-88ef-4558-a6d6-2c0589e04638"/>
            </line>
        </band>
    </detail>
</jasperReport>
结果

注意:如果有多个字段在同一个详细信息栏中延伸,则可能会变得更复杂,在这种情况下,您可能需要使用子报表来获得正确的布局


欲了解更多信息,请参见

嗨,我发布了答案并编辑了问题(标题为问题和一些次要语法)。。。。也许你应该考虑在标题垂直或底部改变(标题似乎奇怪…),但不能编辑很多,因为我不想改变你的原著而不咨询你(帖子是你的):嗨,谢谢你的回答!标题确实很奇怪,我把它改了,以便更好地代表这个问题。
+-----------------------------+-----+------------+-------------+-------------+-------------+
|            name             | age |   adress   |   field1    |   field2    |   field3    |
+-----------------------------+-----+------------+-------------+-------------+-------------+
| Very long name that stretch |  12 | Selvarella | field1Value | field2Value | field3Value |
| Shorty                      |  13 | New York   | field1Value | field2Value | field3Value |
+-----------------------------+-----+------------+-------------+-------------+-------------+