格式化ReportLab表中的第一行

问题描述 投票:0回答:1

我正在构建一个非常基本的函数来将数据帧导出到PDF表格中。此时,只要数据可读,我就不需要任何复杂的格式。在互联网上查找其他代码,我几乎到了那里,除了我看不出如何以粗体显示表格的标题行。

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.

python reportlab
1个回答
0
投票

你想要look at this on page 85

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

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

© www.soinside.com 2019 - 2024. All rights reserved.