Python可以使用多种库和工具来生成PDF文档,包括reportlab、pyFPDF和WeasyPrint等。下面将从多个方面对Python代码生成PDF文档进行详细阐述。
一、使用reportlab库生成PDF文档
1、安装reportlab库
pip install reportlab
2、使用reportlab生成PDF文档
from reportlab.pdfgen import canvas def create_pdf(): c = canvas.Canvas("example.pdf") c.drawString(100, 750, "Hello World") c.save() create_pdf()
reportlab库提供了canvas类来创建PDF文档,使用drawString方法可以在指定位置绘制文本。
二、使用pyFPDF库生成PDF文档
1、安装pyFPDF库
pip install fpdf
2、使用pyFPDF生成PDF文档
from fpdf import FPDF class PDF(FPDF): def header(self): self.set_font("Arial", "B", 12) self.cell(0, 10, "Header", 1, 1, "C") def footer(self): self.set_y(-15) self.set_font("Arial", "I", 8) self.cell(0, 10, "Page %s" % self.page_no(), 0, 0, "C") def chapter_title(self, title): self.set_font("Arial", "B", 12) self.cell(0, 10, title, 1, 1, "L") def chapter_body(self, body): self.set_font("Arial", "", 12) self.multi_cell(0, 10, body) def create_pdf(): pdf = PDF() pdf.add_page() pdf.chapter_title("Chapter 1") pdf.chapter_body("Lorem ipsum dolor sit amet, consectetur adipiscing elit.") pdf.output("example.pdf") create_pdf()
pyFPDF库提供了FPDF类来创建PDF文档,通过重写header、footer、chapter_title和chapter_body方法可以自定义PDF文档的头部、尾部和章节内容。
三、使用WeasyPrint库生成PDF文档
1、安装WeasyPrint库
pip install WeasyPrint
2、使用WeasyPrint生成PDF文档
from weasyprint import HTML def create_pdf(): html = "Hello World
" HTML(string=html).write_pdf("example.pdf") create_pdf()
WeasyPrint库可以直接将HTML代码转换为PDF文档,通过HTML类的write_pdf方法可以将HTML代码写入到PDF文件中。
以上是关于使用Python生成PDF文档的示例代码和使用方法的详细阐述,通过这些库和工具,我们可以方便地在Python中生成各种格式的PDF文档。