在 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.
grid = [('GRID', (0,0), (-1,-1), 0.25, colors.black), ('FONTNAME', (0,0), (0,-1), 'Courier-Bold')]
查看第 28 页以获取可用内置字体的列表。
我正在构建一个非常基本的功能来将数据框导出为 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.
grid = [('GRID', (0,0), (-1,-1), 0.25, colors.black), ('FONTNAME', (0,0), (0,-1), 'Courier-Bold')]
查看第 28 页以获取可用内置字体的列表。