我正在使用FPDF库创建PDF,并且正在寻找为文档中单元格上色的颜色。我查看了一下API,发现这样做是这样的:
fpdf.set_fill_color(r: int, g: int = -1, b: int = -1)
所以我继续在脚本中执行此操作:
pdf = FPDF()
pdf.add_page()
pdf.set_font('Arial', 'B', 7)
pdf.set_fill_color(0, 0, 255)
pdf.cell(190, 6, 'Testing...', 1, 1, 'L')
pdf.output('Color.pdf', 'F')
并且颜色不变。一切正常,我只得到一个白色单元格,而不是一个蓝色的单元格。也不会引发任何错误。我做错什么了吗?还是PyFPDF出现了故障?
编辑:向这个问题添加了pdf.add_page()
和pdf.output('Color.pdf', 'F')
(忘记在这里做,在我的脚本中放了它)。
答案 0 :(得分:2)
根据docs,您必须将fill
设置为True
。
[...]
填充:
指示是否必须绘制单元格背景(
True
)或将其透明 (False
)。默认值:False
。[...]
from fpdf import FPDF
pdf = FPDF()
pdf.add_page()
pdf.set_font('Arial', 'B', 7)
pdf.set_fill_color(0, 0, 255)
pdf.cell(190, 6, 'Testing...', 1, 1, 'L', fill=True)
pdf.output('Color.pdf', 'F')