1.首先,打开cmd,安装reportlab
pip install -i https://pypi.tuna.tsinghua.edu.cn/simple reportlab #从清华镜像安装更快
然后就可以使用其基本用法。
from reportlab.lib.pagesizes import letter
from reportlab.pdfgen import canvas
def generate_pdf(filename):
c = canvas.Canvas(filename, pagesize=letter)
c.drawString(100, 750, "Hello, World!")
c.save()
print(f"PDF 文件 {filename} 已成功生成!")
if __name__ == "__main__":
generate_pdf("D:/reportlab/hello_world.pdf")
#但上面的代码有一个问题,就是不能识别中文。
#接下来进行改正
from reportlab.lib.pagesizes import letter
from reportlab.pdfgen import canvas
from reportlab.pdfbase.ttfonts import TTFont
from reportlab.pdfbase import pdfmetrics
def generate_pdf(filename):
# 添加中文字体
pdfmetrics.registerFont(TTFont('SimSun', 'D:/reportlab/simsun/simsun.ttf'))
# 这里的 'simsun.ttf' 是中文字体文件名,需提前下载并放置在正确的路径下
c = canvas.Canvas(filename, pagesize=letter)
c.setFont('SimSun', 12) # 设置字体为中文字体,大小为12
c.drawString(100, 750, "你好,世界!") # 中文字符
c.save()
print(f"PDF 文件 {filename} 已成功生成!")
if __name__ == "__main__":
generate_pdf("D:/reportlab/hello_world1111111111.pdf")
#这个需要下载宋体文件,并保存在固定的路径中。Simsun - Free Fonts 可在此链接下下载
保存在特定路径下,解压缩即可。