gpt4 book ai didi

python - 如何使用 simpledoctemplate reportlab 包将图像移动到 pdf 页面顶部?

转载 作者:太空宇宙 更新时间:2023-11-03 17:35:40 26 4
gpt4 key购买 nike

//这里使用simpledoctemplate创建pdf。我无法将图像带到页面顶部。请给出解决方案

def report_creator():
styles = getSampleStyleSheet()
styleN = styles['Normal']
styleH = styles['Heading1']
elements = []
im = Image("C:\\Images\photo.jpg")
elements.append(im)
doc = SimpleDocTemplate("C:\\report_image.pdf", pagesize=letter)
doc.build(elements)
if __name__ == "__main__":
report_creator()
print "main"

最佳答案

reportlab 信纸页面大小的宽度和高度为 (612.0, 792.0)。因此,您可以通过除以 ((页面宽度/2) - (输入图像宽度/2)) 来获取输入图像的起始位置。

在此示例中

页面宽度 = 612.0

输入图像宽度 = 100

因此输入图像的起始位置(x)将是:

>>> int((612.0/2) - (100/2))
256

注意:- 图像大小作为 CanvasdrawInlineImage 方法中的参数传递。

from PIL import Image
from reportlab.pdfgen import canvas
from reportlab.lib.pagesizes import letter

def generate_pdf(c):
"""
letter :- (612.0, 792.0)
"""
im = Image.open("so.png")
c.drawInlineImage(im, 256, 720, width=100, height=60)

c = canvas.Canvas("report_image.pdf", pagesize=letter)
generate_pdf(c)
c.save()

生成的 PDF 如下所示:

report_image.pdf

关于python - 如何使用 simpledoctemplate reportlab 包将图像移动到 pdf 页面顶部?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31241477/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com