如何将整个表格与 Python Reportlab 库对齐?
Posted
技术标签:
【中文标题】如何将整个表格与 Python Reportlab 库对齐?【英文标题】:How to align a entire table with the Python Reportlab Library? 【发布时间】:2015-12-04 11:39:15 【问题描述】:使用 reportlab 3.1.44 我试图将表格向左对齐(页面上的整个表格,而不是单元格)。 这是我的代码:
from reportlab.platypus import SimpleDocTemplate
from reportlab.platypus.tables import Table, TableStyle
from reportlab.lib import colors
from reportlab.lib.enums import TA_LEFT, TA_CENTER, TA_RIGHT
doc = SimpleDocTemplate('sample2.pdf', showBoundary=1)
t = Table(
(('','North','South','East','West'),
('Quarter 1',100,200,300,400),
('Quarter 2',100,400,600,800),
('Total',300,600,900,'1,200')),
(72,36,36,36,36),
(24,16,16,18)
)
t.setStyle(
TableStyle([
('HALIGN',(0,0),(-1,-1),'LEFT'),\
('GRID', (0,0), (-1,-1), 0.25, colors.red, None, (2,2,1)),
('BOX', (0,0), (-1,-1), 0.25, colors.blue),
])
)
t.alignment = TA_LEFT
story = [t]
doc.build(story)
它仍然与中心对齐。任何想法如何解决这个问题?
【问题讨论】:
【参考方案1】:显然 TableStyle 方法不起作用。 这是我的工作方式:
t = Table((('','North','South','East','West'),
('Quarter 1',100,200,300,400),
('Quarter 2',100,400,600,800),
('Total',300,600,900,'1,200')),
(72,36,36,36,36),
(24, 16,16,18)
,hAlign='LEFT')
【讨论】:
还有t.hAlign = 'LEFT'
而不是t.alignment = TA_LEFT
。几乎和你写的一样以上是关于如何将整个表格与 Python Reportlab 库对齐?的主要内容,如果未能解决你的问题,请参考以下文章
如何将Reportlab与基于Django Class的View相结合?