Yul*_*iya 9 python pdf png fpdf
我有一个 .png 图像列表。我需要将它们全部转换为一个pdf,每页9张图像,但不是将它们垂直放置一个又一个,而是填充所有宽度,然后才继续到下一行。每次的图片数量可以不同(12,... 15)
我试过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")
Run Code Online (Sandbox Code Playgroud)
还有 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()
Run Code Online (Sandbox Code Playgroud)
但他们都将每张图片放在另一张图片下面
只需使用 FPDF 将每个图像放置在所需的坐标处:
pdf.image(image, x=50, y=100, w=sizew, h=sizeh)
Run Code Online (Sandbox Code Playgroud)
有关 FPDF 文档的更多信息:图片