3

是否有可能仅用 django pisa 显示两页或更多页的页码?显示页码的模板如下所示:

<div id="footerContent">
   <p>Page <pdf:pagenumber></p>
</div>

我认为有必要在比萨处理之前获取页数。使用类似这种伪的 if/else 语句的任何选项:

if pages > 1:
 ...
else:
 ...

如果要显示例如第 1/5页(五页之一),还需要获取页数?!比萨没有解决方案吗?

4

3 回答 3

2

我在添加一个计数器时遇到了问题,该计数器会告诉我在文档的总页数中我正在查看哪个页码。当我从以下位置切换比萨导入时,它开始工作:

import ho.pisa as pisa

import xhtml2pdf.pisa as pisa 

用 pip 安装 xhtml2pdf

pip install xhtml2pdf

这就是我的页脚现在的样子

<div id="footerContent">
    {%block page_foot%}
        Page <pdf:pagenumber> / <pdf:pagecount>
    {%endblock%}
</div>
于 2013-05-08T09:25:22.980 回答
1

我认为您可以在不使用https://github.com/chrisglass/xhtml2pdf的情况下做到这一点。我所做的是,我使用如下分页符:

<h1 style="display:none">PAGECOUNT</h1>

h1 的 CSS 是

h1 {
    page-break-before:always;
}

现在,您可以使用

<your-html-string>.count('PAGECOUNT') + 1
于 2013-08-06T11:25:08.800 回答
1

这在当前版本的 python-pisa 中是不可能的。然而,它有一些补丁。如果您使用此 github 中的 pisa 或 xhtml2pdf 版本,您将能够获得总页数。

https://github.com/chrisglass/xhtml2pdf

我的模板页脚如下所示:

<div id="footerContent">
  "Page: <pdf:pagenumber> / <pdf:pagecount>
</div>
于 2013-02-28T13:14:18.620 回答