【问题标题】:report lab function doesn't generate pdf file报告实验室功能不生成 pdf 文件
【发布时间】:2017-07-03 21:11:45
【问题描述】:

我正在尝试在 jpg 图像上绘制字符串并使用 reportlab 将其设为 pdf。 当我这样做时,它会起作用:

from reportlab.pdfgen import canvas
from reportlab.lib.pagesizes import landscape, A4, letter
from reportlab.lib.units import cm, inch


file = 'test.pdf'
name = 'Nita Alexandru Stefan'
year = '1993'

c = canvas.Canvas(file, pagesize=landscape(letter))
c.drawImage('cert.jpg', 0*cm, 0*cm, 29*cm, 22*cm)
c.setFont("Times-Roman", 12)
c.setFillColorRGB(0.2578125, 0.2265625, 0.23046875)
c.drawString(500, 374, name)
c.drawString(429, 359, year)
c.showPage()
c.save()

我想创建一个函数并使用 dict.get(),当我尝试这个时它不会生成任何东西:

from reportlab.pdfgen import canvas
from reportlab.lib.pagesizes import landscape, A4, letter
from reportlab.lib.units import cm, inch

data = dict(name='Nita Alexandru Stefan', year='1993')


def generate_pdf(data, canvas):
    file = 'test.pdf'
    c = canvas.Canvas(file, pagesize=landscape(letter))
    c.drawImage('cert.jpg', 0*cm, 0*cm, 29*cm, 22*cm)
    c.setFont("Times-Roman", 12)
    c.setFillColorRGB(0.2578125, 0.2265625, 0.23046875)
    c.drawString(500, 374, data.get('name', ""))
    c.drawString(429, 359, data.get('year', ""))
    c.showPage()
    c.save()

知道为什么它没有生成任何东西,也没有更改之前创建的文件吗?

【问题讨论】:

    标签: python python-3.x pdf-generation reportlab


    【解决方案1】:

    看来你没有打电话给generate_pdf function

    致电:

    generate_pdf(data, canvas)
    

    函数generate_pdf结束后

    喜欢:

    def generate_pdf(data, canvas):
        file = 'test.pdf'
        c = canvas.Canvas(file, pagesize=landscape(letter))
        c.drawImage('cert.jpg', 0*cm, 0*cm, 29*cm, 22*cm)
        c.setFont("Times-Roman", 12)
        c.setFillColorRGB(0.2578125, 0.2265625, 0.23046875)
        c.drawString(500, 374, data.get('name', ""))
        c.drawString(429, 359, data.get('year', ""))
        c.showPage()
        c.save()
    
    generate_pdf(data, canvas)
    

    【讨论】:

    • 好的,我明白了,我怎样才能调用函数来获得想要的结果?
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-08-04
    • 2011-10-05
    • 1970-01-01
    相关资源
    最近更新 更多