首页 > 解决方案 > 将字段数据显示到 pdf 文件的标题部分

问题描述

我对使用这个库调用 Django Reportlab 很陌生,我想在 pdf 文件的标题部分显示“供应商”详细信息。这是代码

def generate_pdf(request):
  
    pdf_buffer = BytesIO()

    doc = SimpleDocTemplate(pdf_buffer, pagesize=landscape(letter))

    styles = getSampleStyleSheet()

    elements = []

    paragraph_text = 'Victorious Step Sdn.Bhd. (667833-T)'

    columns = [
        {'title': 'Date', 'field': 'created_date'},
        {'title': 'Part No', 'field': 'partno'},
        {'title': 'Supplier Name', 'field': 'supplier'},
        {'title': 'Status', 'field': 'limit'},
    ]

    table_data = [[col['title'] for col in columns]]

    orders = Order.objects.all()

    for tr in orders:

        table_row = [str(tr.created_date.strftime("%d-%m-%Y")), tr.part.partno, tr.supplier]

        table_data.append(table_row)

    table = Table(table_data, repeatRows=1, colWidths=[doc.width / 7.0] * 7)

    table.setStyle(TableStyle([

        ('BOX', (0, 0), (-1, -1), 0.20, colors.dimgrey),
        ('FONT', (0, 0), (-1, 0), 'Helvetica-Bold'),
        ('INNERGRID', (0, 0), (-1, -1), 0.1, colors.black),
        ('ALIGN', (0, 0), (-1, -1), 'CENTER'),
        ('FONTSIZE', (0, 0), (-1, -1), 10),
    ]))

    elements.append(table)

    elements.append(Spacer(1, 50))

    doc.build(elements)

    pdf = pdf_buffer.getvalue()

    pdf_buffer.close()

    response.write(pdf)

    return response

我试图在paragraph_text = 'Victorious Step Sdn.Bhd. (667833-T)' . 谁能帮助我如何做到这一点?提前致谢。

标签: pythondjangoreportlab

解决方案


推荐阅读