请帮助我,如何将pylab plt添加到我的pdf的第二页。我有下一个文本代码,所以我的报告的第一页将是文本,在第二页我不想插入图。如何添加第二页并将plt.savefig("my.pdf")
保存到我的pdf文件的第二页?
c = canvas.Canvas('my.pdf', pagesize=landscape(letter))
c.setFont('Helvetica', 35, leading=None)
c.drawCentredString(415,500, "Name")
c.setFont('Helvetica', 34, leading=None)
c.drawCentredString(415,440, "Surname")
c.setFont('Helvetica',24, leading=None)
c.drawCentredString(415,395, "Igorj Borin")
c.setFont('Helvetica-Bold', 16, leading=None)
c.drawCentredString(415,350, "Vasja pupkin")
c.setFont('Helvetica-Bold', 20, leading=None)
c.drawCentredString(415,310, strftime("%d/%m/%Y %H:%M:%S", gmtime()))
c.showPage()
c.save()
plt.savefig("my.pdf")
答案 0 :(得分:0)
如果你有一个位图图片,比如png,jpg,gif,bmp(哦亲爱的..),你可以在调用c.save()
之前添加以下几行:
from reportlab.lib.units import inch, cm # 72 dpi -> inch = 72
c.drawImage('my.png',2.5*cm, 5*cm, 4*inch, 3*inch) # parameters: filename, spacing from left and bottom, with width and height
Reportlab似乎没有很好地处理矢量图像,即使安装了PIL,如果在导出为pdf的图像上使用它,也会产生IOError: cannot identify image file
。
但是,你可以,例如使用ghostscript合并pdf,无论其内容如何。但是,你不会拥有典型的reportlab样式。