reportlab: agregar imagen de fondo mediante el uso de ornitorrinco

Esto es un poco relacionado con esta publicación.

Estoy intentando colocar una imagen en el fondo, y quiero poder escribir texto sobre ella. el uso de canvas.drawImage ayuda, pero ese es un enfoque de muy bajo nivel para mí.
Mi progtwig usa platypus, pero canvas.drawImage es parte de una biblioteca diferente. He podido insertar imágenes con platypus.Image , pero no pude averiguar cómo hacerlo como fondo.
Cualquier consejo sería genial,

Gracias: D

Cuando creas una plantilla de página en Platypus, tienes la capacidad de pasar una función a través del argumento llamado onPage . En esa función puede colocar todo el formato de página básico (encabezados, pies de página, marca de agua, imagen de fondo).

Aquí hay un ejemplo:

 def AllPageSetup(canvas, doc): canvas.saveState() #header canvas.drawString(0.5 * inch, 8 * inch, doc.fund.name) canvas.drawRightString(10.5 * inch, 8 * inch, doc.report_info) #footers canvas.drawString(0.5 * inch, 0.5 * inch, 'Larry Co.') canvas.drawRightString(10.5 * inch, 0.5 * inch, 'Page %d' % (doc.page)) canvas.setFont("Helvetica", 240) canvas.setStrokeGray(0.90) canvas.setFillGray(0.90) canvas.drawCentredString(5.5 * inch, 3.25 * inch, doc.watermark) canvas.restreState() doc = BaseDocTemplate(file_name) doc.fund = fund # stores my fund object into the document for reference doc.report_info = "%s %s" % (fund.current_report.date.isoformat(), version) doc.watermark = 'DRAFT' page_template = PageTemplate(id="fund_notes", onPage=AllPageSetup, pagesize=page_size) #Now, every page will have headers, footers, and a watermark