Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/python-3.x/18.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/wix/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 报告实验室功能不可用';t生成pdf文件_Python_Python 3.x_Pdf Generation_Reportlab - Fatal编程技术网

Python 报告实验室功能不可用';t生成pdf文件

Python 报告实验室功能不可用';t生成pdf文件,python,python-3.x,pdf-generation,reportlab,Python,Python 3.x,Pdf Generation,Reportlab,我正在尝试在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 =

我正在尝试在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()

您知道为什么它不生成任何内容,也不更改以前创建的文件吗?

您似乎没有调用
生成pdf函数

电话:

generate_pdf(data, canvas)
函数
generate\u 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)