繁体   English   中英

使用reportLab生成的pdf大小

[英]Size of pdf generated with reportLab

我在生成pdf时遇到问题。

当我生成pdf并在几分钟后重新启动相同的脚本以生成相同的pdf时,我的第一个pdf和第二个pdf之间没有相同的大小...

这是我的代码:

c = reportlab.pdfgen.canvas.Canvas("test.pdf")
c.showPage()
c.save()

第一个pdf有: 1519字节

第二个有1531个字节

每当我重新启动相同的脚本并且每当我具有不同的值时。 为什么? 我该如何解决?

我看不到您的PDF大小更改问题,但是其内容正在更改:

$ python make_pdf.py && md5sum test.pdf
9a1dbc5621622526b4411fb5f818246e  test.pdf
$ python make_pdf.py && md5sum test.pdf
b4c3ef4661c2a0f7d5c458757ac8a891  test.pdf
$

根据您的注释提示,设置invariant选项即可解决该问题。

import reportlab.pdfgen.canvas
import reportlab.rl_config

reportlab.rl_config.invariant = 1
c = reportlab.pdfgen.canvas.Canvas("test.pdf")
c.showPage()
c.save()

现在,内容不会更改,因为PDF没有获得生成的ID,并且时间戳记设置为2000 UTC Jan 01 UTC。

$ python make_pdf.py && md5sum test.pdf
4a0ecf533e69fc2a91cda0a055cbec58  test.pdf
$ python make_pdf.py && md5sum test.pdf
4a0ecf533e69fc2a91cda0a055cbec58  test.pdf
$

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM