8

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

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

在 weasyprint 生成的每个 pdf 页面的右下方放置一个“Page 1 of 4”样式计数器。

我想为我的页脚制作稍微花哨的格式 - 例如,我希望能够以粗体显示某些部分,而将其他部分显示为斜体,如下所示:

1页 ,共 4页

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

4

1 回答 1

12

“第1页 ,共 4页”目前不可行。如果您有兴趣,请向www-style@w3.org发送评论,了解新的 CSS 功能会是什么样子来做这种事情。

有效的是:

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

顺便说一句,我通常不看 StackOverflow 的 WeasyPrint 问题。写信给 WeasyPrint 的邮件列表或问题跟踪器会得到更多的回复。

于 2014-01-22T01:07:43.963 回答