实际生活工作中,我们会希望有些报告、图表可以自动生成,然后变成pdf,甚至直接发邮件到某个制定邮箱lib。这个时候有几种方式可以来实现,譬如用latex,但是这个似乎还要在电脑上装很多东西。还有一个pdfkit的东西,直接把html转成pdf,不过也要装一个插件。虽然实现起来可能pdfkit更简单,但是从功能角度来讲,似乎是report更加强,而且文档也丰富。
1.第一个reportlib的demo
安装就不说了,pip即可。
from reportlab.pdfgen import canvas
def hello(c):
c.drawString(100, 100, "Hello World")
c = canvas.Canvas("hello.pdf")
hello(c)
c.showPage()
c.save()
首先第一步是建立一个pdf对象,用canvas.Canvas实例化即可,然后我们就获得了一个Cancas对象。这个对象有很多方法。这些方法分为两类,一类用于设置、操作,譬如设置颜色,设置字体。例如这里的showPage()就表示此页完毕,转到下一页。另一类则用于在pdf上绘制或者说写入东西,例如上面的drawString()。当我们对pdf编辑完成了,只要调用save方法&#