У меня есть проект python, который создает PDF-файл из некоторых данных в веб-приложении на Python с помощью ReportLab. Он создает большую текстовую строку, а затем добавляет ее к холсту, а затем создает PDF-файл из холста. Меня попросили добавить линейную диаграмму в середине PDF. Я нашел много информации, там о том, чтобы включить диаграмму непосредственно в PDF в ReportLab, например так:Как добавить диаграмму в PDF с помощью ReportLab
Но ничего о том, как добавить, что диаграммы в формате PDF в рамках другой форматированный контент. Вот код, с которым я работаю:
class GenPDF(R):
@tornado.web.authenticated
def get(self):
"""takes text and generates PDF"""
msg = gen_report(subject, test_name)
filename = "filename.txt"
self.set_header("Content-Type", 'application/pdf; charset="utf-8"')
self.set_header("Content-Disposition", "attachment; filename=%s.pdf" %filename)
io = StringIO.StringIO()
c = canvas.Canvas(io, pagesize=A4)
imagem = canvas.ImageReader(StringIO.StringIO(open('logo.jpeg', 'rb').read()))
c.drawImage(imagem, 430, 688, 100, 100) # Draw it in the bottom left, 2 inches high and 2 inches wide
text = c.beginText()
text.setTextOrigin(100, 700)
text.setFont("Times-Roman", 16)
text.textLine("Test Report")
text.setFont("Times-Roman", 12)
text.textLines(msg)
text.textLines(CLASS_MAP[test_name]['blurb'])
text.textLine("_____________________________________________________________________________")
text.textLines(CLASS_MAP[test_name]['scale'])
text.textLine("_____________________________________________________________________________")
text.setFont("Times-Roman", 8)
text.textLines(DISCLAIMER)
c.drawText(text)
c.showPage()
c.save()
pdf=io.getvalue()
io.close()
self.write(pdf)
Где я могу добавить код для добавления диаграммы? Я попытался добавить его как рисунок, но не могу понять, где я могу добавить чертеж на холст или в сам PDF.