如何解决在 PDF 文件中添加多个图像
提前致谢。我正在努力将文件夹中的图像自动添加到 Python 中的 pdf 中。我想保留 pdf 的原始内容并在 pdf 顶部添加图像。所有图像必须在同一页面上,并在每次交互时更改 y 坐标,仅在 28 个图像后更改 x 坐标。到目前为止,这是我的代码:
import os,os.path
from io import BytesIO
from PyPDF2 import PdfFileWriter,PdfFileReader
from reportlab.pdfgen import canvas
from reportlab.lib.pagesizes import A4
def gen_pdf():
path = 'images/{0}.jpg'
pdf = PdfFileWriter()
x = 50
y = 800
col = 1
for num in range(1,67): # for each slide
# Using ReportLab Canvas to insert image into PDF
imgTemp = BytesIO()
imgDoc = canvas.Canvas(imgTemp,pagesize=A4)
# Draw image on Canvas and save PDF in buffer
imgDoc.drawImage(path.format(num),x,y,width=28.35,height=14.17)
# x,y - start position
# in my case -25,-45 needed
imgDoc.save()
y += 50
if num % 28 == 0: #After every 28 images go to the next column
x += 50
y = 800
col += 1
if col == 9:
break
# Use PyPDF to merge the image-PDF into the template
pdf.addPage(PdfFileReader(BytesIO(imgTemp.getvalue())).getPage(0))
pdf.write(open("output.pdf","wb"))
if __name__=="__main__":
gen_pdf()
我从 here 获得了大部分代码。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。