[Python] png images to one pdf in python

Discussão em 'Python' iniciado por Stack, Junho 2, 2025.

  1. Stack

    Stack Membro Participativo

    I have a list of .png images. I need to convert all of them into one pdf, 9 images per page , but not to place them one after another vertically, but fill in all the width, and only then continue to next row. Amount of pictures can be different each time (12, ... 15)

    I have tried fpdf

    from fpdf import FPDF

    list_of_images = [1.png, 2.png, ... 15.png]
    w = 70
    h = 60
    pdf = FPDF(orientation = 'L')
    for image in list_of_images:
    pdf.image(image, w=sizew, h=sizeh)
    pdf.output("Memory_usage.pdf", "F")


    and also wkhtmltopdf

    template = Template('''<!doctype html>
    <html>
    <body>
    <div style="display: flex; flex-direction: row">
    {% for image in images %}
    <img src="{{ image }}" />
    {% endfor %}
    </div>
    </body>
    </html>''')
    list_of_images = [1.png, 2.png, ... 15.png]
    html = template.render(images=list_of_pict)
    with open("my_new_file.html", "wb") as fh:
    fh.write(html)

    p = subprocess.Popen(['wkhtmltopdf', '-', 'Memory_usage.pdf'], stdin=subprocess.PIPE, universal_newlines=True)
    p.communicate(html)
    p.wait()


    but both of them place each picture one under another

    Continue reading...

Compartilhe esta Página