8

我有一个带有简单 css2 规则的 html 页面。所有内容都包含在一个 930 像素宽的 div 中。在浏览器中,这看起来符合预期,并且在打印(从 chrome)时,它以合适的字体大小整齐地适合页面。

一旦我尝试使用 weasyprint 从该文件创建 PDF,字体看起来要大得多,并且文档超出了页面宽度。

HTML(string=html, base_url=server_base_url).write_pdf(target=target) 

我不确定如何调试该问题。Weasyprint 似乎没有假设打印缩放,这是我假设 chrome 正在做的事情。获取文档,渲染它,然后缩放它以适应页面。

我尝试使用方法的zoom参数,但它似乎放大了页面大小和内容大小,所以这真的没有帮助。我尝试将它与 css 结合以使页面更大。所以我用 weasy 缩小并用 css 放大write_pdf.write_pdf(target=target, zoom=0.7)

@page {
    size: XXXin YYYin
}

这最终看起来很奇怪。那么我从这里去哪里呢?

4

1 回答 1

9

您是否尝试过使用

@page {
    size: Letter;
    margin: 0in 0.44in 0.2in 0.44in;
}

您可以根据需要调整页边距,但 Letter 大小应为标准页面大小

页面大小

于 2016-08-16T13:32:29.200 回答