gpt4 book ai didi

python - Reportlab 的网格看起来完全不正常

转载 作者:行者123 更新时间:2023-12-01 08:16:56 27 4
gpt4 key购买 nike

看起来我的表格内容和网格行为不正常,即网格没有按预期装箱在数据中。

这是我的代码:

    story = []

data = [['Data1', 'Data2', 'Data3', 'Data4', 'Data5', 'Data6'],
['0.2', '-0.1', '0', '0', '-0.5', '0.6']]

colwidths = (50, 50, 50, 50, 50, 50)
rowheights = (10, 10)

t = Table(data, colwidths, rowheights)

GRID_STYLE = TableStyle(
[('FONTSIZE', (0, 0), (-1, -1), 5),
('GRID', (0, 0), (-1, -1), 0.5, colors.black),
('ALIGN', (1, 1), (-1, -1), 'RIGHT')]
)

t.setStyle(GRID_STYLE)
story.append(t)

doc = SimpleDocTemplate('mydoc.pdf', pagesize=landscape(letter), topMargin=50)
doc.build(story)

这是我得到的 pdf 输出:

enter image description here

有人知道我在这里忽略了什么吗?

最佳答案

根据我的经验,除了对齐 (1,1)、(-1,-1) 之外,它还从第 1 列、第 1 行(而不是第 0 列和第 0 行(从 0 开始计数))右对齐这一切都是为了在指定 TableStyle 时变得冗长。如果不这样做,样式本身会分配默认值(例如左右填充),这通常不是您想要的。因此,为了完全控制,请尝试为所有类别分配一个值,并且不要遗漏任何相关类别。

例如我用下面的方法让它看起来更好

story = []

data = [['Data1', 'Data2', 'Data3', 'Data4', 'Data5', 'Data6'],
['0.2', '-0.1', '0', '0', '-0.5', '0.6']]

colwidths = (50)
rowheights = (10)

t = Table(data, colwidths, rowheights)

GRID_STYLE = TableStyle(
[('FONTSIZE', (0, 0), (-1, -1), 5),
('GRID', (0, 0), (-1, -1), 0.5, colors.black),
('ALIGN', (0, 0), (-1, -1), 'CENTER'),
('LEFTPADDING', (0, 0), (-1, -1), 0),
('RIGHTPADDING', (0, 0), (-1, -1), 0),
('TOPPADDING', (0, 0), (-1, -1), 0),
('BOTTOMPADDING', (0, 0), (-1, -1), 0),
('FONTNAME', (0, 0), (-1, -1), 'Helvetica'),
('SIZE', (0, 0), (-1, -1), 7),
('LEADING', (0, 0), (-1, -1), 8.2),
]
)

t.setStyle(GRID_STYLE)
story.append(t)

doc = SimpleDocTemplate('mydoc.pdf', pagesize=landscape(letter), topMargin=50)
doc.build(story)

enter image description here

关于python - Reportlab 的网格看起来完全不正常,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54927549/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com