[Python] Adding page number while merge a pdf with PyPDF2

Discussão em 'Python' iniciado por Stack, Julho 19, 2025.

  1. Stack

    Stack Membro Participativo

    I am merging units of information(.PDF) into a sigle PDF. I have a lot of variables whithin a lot of filters (you can select just one of each filter) that need to be used in order to define the complete manual, look : Manual Generator in portuguese

    My major problem is basically add a page number to the PDF while its merging itself, i was using the code here and here, but unsuccessfully The simplified code i am using is:

    from PyPDF2 import PdfFileWriter, PdfFileReader
    import io
    from reportlab.pdfgen import canvas
    from reportlab.lib.pagesizes import A4

    print(var1.get(), var2.get(), var3.get(), var4.get(), var5.get(), var6.get())
    merger.append(Modelo) #filter one
    merger.append(Escada) #filter two
    output = open('ModeloMerg.pdf', 'wb')
    merger.write(output)

    pdf = PdfFileReader('ModeloMerg.pdf')

    packet = io.BytesIO()
    can = canvas.Canvas(packet, pagesize=A4)
    can.drawString(10, 100, "Page" + str(15)) #just a random test number
    can.save()
    packet.seek(0)

    watermark = PdfFileReader(packet)
    watermark_page = watermark.getPage(0)



    for page in range(pdf.getNumPages()):

    pdf_page = pdf.getPage(page)
    pdf_page.mergePage(watermark_page)
    pdf_writer.addPage(pdf_page)

    with open('out.pdf', 'wb') as fh:
    pdf_writer.write(fh)

    Continue reading...

Compartilhe esta Página