weasyprint可以理解某些自定义css指令,例如:

 @bottom-right {
   content: "Page " counter(page) " of " counter(pages) "
 }

这会在weasyprint生成的每个pdf页面的右下角放置一个“第1页,共4页”样式计数器。

我想为页脚生成一些更奇特的格式-例如,我希望能够以粗体显示某些部分,并以斜体显示其他部分,例如:

页,共 1 ,4

使用weasyprint可行吗?如果是这样,我如何指示weasyprint使用这种格式-我将采用基于CSS的解决方案,尽管我宁愿使用python的weasyprint库以编程方式进行此操作。

最佳答案

目前无法执行“ 4 的页面 1 ”。如果您有兴趣,请向[email protected]发送评论,以了解新的CSS功能可以实现这种功能。

起作用的是:

  • 具有@bottom-right属性的页边距规则(例如content)。每页最多可以有16个这样的框,但是一个框的各个部分不能使用不同的样式。
  • 在每个页面上重复带有position: fixed的元素。使用top: 100%; right: 0这样的技巧,您可以将它们定位为页眉或页脚,但它们在每个页面上都是相同的。 counter(page)在那里不起作用。

  • 顺便说一句,我通常不关注WeasyPrint问题的StackOverflow。写入WeasyPrint的邮件列表或问题跟踪器将获得更多响应。

    关于python - 是否可以使用weasyprint对页面页脚进行精美的格式化?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/17843147/

    10-12 23:29