在 ReportLab 中格式化第一行 table

Format first row in ReportLab table

我正在构建一个非常基本的功能来将数据框导出为 PDF table。此时,我不需要任何复杂的格式设置,只要数据可读即可。在 Internet 上查找其他代码,我快到那里了,除了我看不到如何以粗体显示 table 的 header 行。

import pandas as pd
from reportlab.platypus import *
from reportlab.lib import colors
from reportlab.lib.pagesizes import A4

def df_to_pdf(data, pdf_file): # data is a DataFrame object
    table_data = [data.columns.values.tolist()] + data.values.tolist()
    grid = [('GRID', (0,0), (-1,-1), 0.25, colors.black)]
    pdf_table = Table(data=table_data, repeatRows=1, style=TableStyle(grid))
    doc = SimpleDocTemplate(pdf_file, pagesize=A4)
    element = []
    element.append(pdf_table)
    doc.build(element)

我只希望第一行中的文本(将在每一页上重复)以粗体显示。还有什么我很乐意保持简单。

谢谢!

R.

你会想要 look at this on page 85

grid = [('GRID', (0,0), (-1,-1), 0.25, colors.black), ('FONTNAME', (0,0), (0,-1), 'Courier-Bold')]

查看第 28 页以获取可用内置字体的列表。