Django生成PDF文件

在这里, 我们将学习如何使用Django视图设计和生成PDF文件。为了生成PDF, 我们将使用ReportLab Python PDF库来创建自定义的动态PDF。
它是一个开源库, 可以在Ubuntu中使用以下命令轻松下载。

$ pip install reportlab

安装后, 我们可以通过在视图文件中使用import关键字将其导入。
下面是一个简单的PDF示例, 其中我们输出一个字符串消息“ Hello form srcmini”。该库提供了画布和用于生成定制PDF的工具。参见示例。
// views.py
from reportlab.pdfgen import canvasfrom django.http import HttpResponsedef getpdf(request):response = HttpResponse(content_type='application/pdf')response['Content-Disposition'] = 'attachment; filename="file.pdf"'p = canvas.Canvas(response)p.setFont("Times-Roman", 55)p.drawString(100, 700, "Hello, srcmini.")p.showPage()p.save()return response

首先, 提供MIME(内容)类型为application / pdf, 以便输出生成为PDF而不是HTML,
设置Content-Disposition, 在其中提供标头作为附件和输出文件名。
将响应参数传递到画布和绘制字符串, 以在将字符串写入之后应用到save()方法并返回响应。
// urls.py
path('pdf', views.getpdf)

在urls.py中设置上述代码以调用视图功能。
运行服务器并在创建pdf文件的浏览器中访问此视图。请参阅示例。
输出:
Django生成PDF文件 PDF文件已生成, 可以下载了。下载文件并打开它, 它显示了我们编写的字符串消息。
Django生成PDF文件 【Django生成PDF文件】除此之外, 该库还包含许多其他方法来动态设计和生成PDF。

    推荐阅读