如何获取RML模板中的总页数?

时间:2013-04-05 13:42:17

标签: rml

RML中有a tag <pageNumber>,显示当前页码。

但是如何获得生成的PDF文档的总页数?

我想添加“Page 1/2”,“Page 2/2”之类的分页:

Page <pageNumber /> / <pageCount>

<pageCount>标签不存在。

2 个答案:

答案 0 :(得分:8)

花了相当多的时间后,我发现了这个:

<story>的末尾添加:

<namedString id="lastPage"><pageNumber/></namedString>

要显示分页,请使用:

Page <pageNumber /> / <getName id="lastPage" default="0" />

答案 1 :(得分:2)

我在OpenErp中一直在为这个案例解决方案:

<document>
    <template>
        <pageTemplate>
            <stylesheet>
                ...
                <paraStyle name="main_footer" fontSize="7.0" leading="7" alignment="LEFT" spaceBefore="0.0" spaceAfter="0.0"/>
                ...
            </stylesheet>
            ...
            ...
            <!-- Page Footer -->
            <place x="1.5cm" y="0cm" height="1cm" width="19.0cm">
                <para style="main_footer">[[ o.name or '']] | P&#225;gina: <pageNumber/> de </para>
            </place>    
            <drawString x="4.9cm" y="0.74cm"><pageCount/></drawString>
            ...

基本上,它“绘制”页脚文字左侧的<pageCount>标记。来自@alartur的解决方案更优雅,但它在OpenErp rmltopdf转换器中不起作用。

我们必须在7px处使用Helvetica字体作为我们的页脚文本,因为它是<pageCount>

的rmltopdf代码中使用的默认字体