Reportlab использование цикла for для создания нескольких таблиц

Мне нужно через цикл for создать больше таблиц, я думаю, что это работает, но мне нужно изменить различные координаты, как я могу сделать?

2) Возможно ли изменить ширину одной строки таблицы? Или в любом случае привести ее text-align влево, но который начинается с того места, где начинается таблица?

def testPdfView(request, id):

    #dati init
    scheda = get_object_or_404(Schede, pk = id)
    filename = 'media/pdf/' + scheda.nome_scheda + '.pdf'
    titolo =  scheda.utente.username + ' - ' + scheda.nome_scheda

    #creazione file
    doc = SimpleDocTemplate(
        filename,
        pagesize = A4,
        rightMargin = 10*mm,
        leftMargin = 10*mm,
        topMargin = 47*mm,
        bottomMargin = 10*mm
    )

    #titolo
    doc.title = titolo

    #passaggio scheda alla funzione pdfCanvas
    doc.scheda = scheda

    #table gruppi
    gruppi = DatiGruppi.objects.filter(gruppi_scheda = id)
    for gruppo in gruppi:
        table = Table([
            [str(gruppo).upper()]
        ], colWidths= 180*mm, repeatRows=1)
    
    #table style
    style = TableStyle([
        ('TEXTCOLOR', (0,0),(-1,0), colors.HexColor("#9FFC0D")),# -1 significa l'ultimo elemento
        ('FONTNAME', (0,0), (0,0), 'bulk_bold'),
        ('FONTSIZE', (0,0), (0,0), 6*mm),
        ('BOTTOMPADDING', (0,0), (-1,0), 6*mm),
        ('LINEBELOW',(0,0),(-1,0), 1, colors.HexColor("#9FFC0D")),
    ])
    table.setStyle(style)

    #table add to template
    elems = []
    elems.append(table)

    #create
    doc.build(elems, onFirstPage = pdfCanvas)
Вернуться на верх