使用reportlab生成pdf

时间:2015-05-08 07:20:00

标签: python django pdf reportlab

在django项目中尝试使用python-reportlab创建pdf

    from reportlab.pdfgen import canvas
    response = HttpResponse(content_type='application/pdf')
    response['Content-Disposition'] = 'attachment; filename="somefilename.pdf"'

    p = canvas.Canvas(response)
    p.drawString(10, 800, "Name")
    p.drawString(10, 900, "Address")
    p.drawString(10, 1000, "School")
    p.showPage()
    p.save()

关于输出pdf它只显示Name,其他两个字符串发生了什么?

2 个答案:

答案 0 :(得分:1)

"地址"的坐标和"学校"只是在页面之外。 reportlab坐标系的原点是左下角,x坐标向右,y坐标向上。请尝试以下方法:

p.drawString(10, 800, "Name")
p.drawString(10, 790, "Address")
p.drawString(10, 780, "School")

答案 1 :(得分:0)

所以这很有效。只是为y坐标赋予了较小的值。尝试根据您的需要使用这些值。

p = canvas.Canvas(response)
p.drawString(10,750,'Name')
p.drawString(10,650,'Address')
p.drawString(10,550,"School")
p.showPage()
p.save()