当前位置: 首页 > 知识库问答 >
问题:

Jasper 报告:居中当前页码和总页码

封弘伟
2023-03-14

我想在Jasper Reports报表的页脚中打印当前页码和总页码,如短语“第2页,共10页”。短语必须在页边距之间居中。文本模式依赖于区域设置。

自然的方法是使用消息模式来进行格式化和翻译,例如msg($R{msg_page_number},$V{PAGE_NUMBER},$V{TOTAL_PAGE_NUMBERS})。这是不可能的,因为没有像TOTAL_PAGE_NUMBERS这样的变量。必须在报表布局的不同时间评估PAGE_NUMBER变量。因此,必须使用多个文本元素来打印行。这使得居中非常困难,因为没有一个文本元素实际上位于页面的中心。

有没有办法把当前页码和总页码打印成像“$R{page} X $R{of} Y”这样的词组水平居中在页面上?

共有3个答案

皮承基
2023-03-14

你可以这样做来解决你的问题。

取两个字段Field1应为$V{Page_Number}设置评估时间属性。现在Field2应为$V}Page_Numer}设置评估时属性。report

你的问题解决了……

范浩宕
2023-03-14

有一个用于此目的的变量,您已经在使用它了。事实上,用来显示当前页码的同一个变量(即:$V{PAGE_NUMBER})也可以用来显示总页数。唯一的区别是你应该改变评估时间。默认设置为“现在”(所以第一个PAGE_NUMBER变量是可以的),而在第二个变量上,你应该将其设置为“报告”。您应该以如下所示的textField组件结束:< br >

<textField evaluationTime="Report">
        <reportElement uuid="b3d3c256-49ad-492b-8f6e-37ac3a3f2d61" style="Column header" x="678" y="0" width="40" height="13" forecolor="#FFFFFF"/>
        <textElement verticalAlignment="Middle">
            <font fontName="SansSerif" size="10" isBold="false"/>
        </textElement>
        <textFieldExpression><![CDATA[" " + $V{PAGE_NUMBER}]]></textFieldExpression>
</textField>
西门山
2023-03-14

用这个:

<textField evaluationTime="Master">
    <reportElement x="4" y="9" width="546" height="22" uuid="b2d67140-3666-4968-8b46-89672b6fb6d5"/>
    <textElement textAlignment="Right"/>
    <textFieldExpression><![CDATA["Page " + $V{MASTER_CURRENT_PAGE} + " of " + $V{MASTER_TOTAL_PAGES}]]></textFieldExpression>
</textField>
 类似资料:
  • 我的应用程序中有几个类似的报告,因此我创建了一个基本结构,在标题中有一个子报告,在页脚中有另一个子报告。 我不知道为什么我找不到解决这个问题的方法,如果有人能帮我...谢谢!

  • 如何在jasper子报告中显示当前页码?我只做了第一页,变量如下:$V{page_NUMBER}和“(”$V{page_COUNT}“)”,但我们如何在所有子报告中显示?

  • 我是Jasper报告的新手。我有一个包含2组的报告。根据查询,正在打印多页。 第一组高度 - 95分,第二组高度 - 144分 我希望这些多页打印在一页中(我希望一页中包含5页)。每页高度为239点。(即使页面内容小于239分,我希望将剩余部分保留为空白,并在239分后开始下一页)。我尝试创建一个报告,并将上述报告作为子报告,并设置主报告的高度为1195(239*5)点。尽管如此,这些都被打印在不

  • 我在运行这个代码时遇到了一个问题。我总是收到这样的消息:“文档没有页面”,在pdf文件中有一个空白页。 注意:我使用的是NetBeans IDE7.2测试版。 null 这是我的代码: 我真的很感激你的帮助。

  • 空白处空间如何化解?

  • 我正在从. jasper文件加载jasper报告文件以提高性能,如下所示。 但是我现在有一个要求,动态形成的查询必须设置为. jasper(编译)文件。有没有办法做同样的事情?