django-easy_pdf显示pdf编号

时间:2016-03-10 17:27:21

标签: python django django-templates

我正在使用django-easy_pdf为我的报告重新编写pdf,并希望了解如何显示页脚。

django-easy_pdf的源代码中,这段代码用于显示页码

<div id="footerContent">
    {%block page_foot%}
        <pdf:pagenumber />
    {%endblock%}
</div>

我想知道的是:

  • 如何正确显示页脚
  • 从第1页开始

由于我复制了代码,因此它不会显示为页脚,页面以0

开头

我错过了什么?

更新

我尝试了来自here的代码,但我无法使其正常工作,虽然

似乎很有用
<html>
    <head>
        <style>
            .footer { position: fixed; bottom: 0px; }
            .pagenum:before { content: counter(page); }
        </style>
    </head>

        <body>
            <div class="footer">Page: <span class="pagenum"></span></div>
       </body>
</html>

更新2

我现在知道我做错了什么,我错过了@page css,这就是为什么它不起作用,我只有@frame footer

正确的CSS:

 @page {
     size: {{ pagesize }};
     margin: 1cm;
     @frame footer {
         -pdf-frame-content: footerContent;
         bottom: 0cm;
         margin-left: 18cm;
         margin-right: 0cm;
         height: 1cm;
    }
}

然后只是正常调用它(第一个片段)

2 个答案:

答案 0 :(得分:0)

要正确显示页脚,请确保您在模板中使用css样式:

@frame footer {
     -pdf-frame-content: footerContent;
}

-pdf-frame-content应该指向您的页脚容器的id。

答案 1 :(得分:0)

您可以在模板中添加下一个代码:

{%block page_foot%}
  <div style="display: block;margin: 0 auto;text-align: center;">
    page: <pdf:pagenumber />
  </div>
{%endblock%}