python - 使用reportlab生成长表格的pdf

标签 python pdf reportlab

我正在处理从庞大的数据列表生成 PDF。

不涉及任何花哨的样式或格式。只是数据是一个巨大的列表(大约500行500列)。这是我的代码。目前,根据页面大小将行拆分到多个页面不会有问题,但由于一页不适合 500 列,所以列被切断。我还想将列拆分到不同的页面上。每个单元格条目只是一个整数。我怎样才能实现这一目标?

from reportlab.lib import colors
from reportlab.lib.units import cm
from reportlab.lib.pagesizes import A0
from reportlab.platypus import SimpleDocTemplate, LongTable, TableStyle


elements = []
doc = SimpleDocTemplate(output, pagesize=A0)
t = LongTable(data)
t.setStyle(TableStyle([('INNERGRID', (0,0), (-1, -1), 0.25, colors.black), 
                       ('BOX', (0, 0), (-1, -1), 0.25, colors.black), 
                     ]))
elements.append(t)
doc.build(elements)

最佳答案

我认为 PDF 打印的最佳选择可能是实际声明足够大的页面大小来处理数据。例如,如果网格的每个 block 都是 1x1 英寸,每边填充一英寸,则尝试执行以下操作:

doc = SimpleDocTemplate(output, pagesize=(502*inch, 502*inch) )

关于python - 使用reportlab生成长表格的pdf,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9841546/

相关文章:

python - 从字典构建搜索查询?

python - 在 PyQt 中创建小部件后如何执行代码?

python - 无法在 Windows cmd 中添加 Python

javascript - 如何在 Node/Javascript 中以编程方式减小 PDF 大小

ruby-on-rails - Prawn 网格布局: Dynamic content colliding with subsequent rows

django reportlab 将 pdf 附加到电子邮件,将 pdf 保存到服务器,在浏览器中显示 pdf

python - 使用 Node js 快速服务器调用 python 脚本

file - Google Apps Scripts - 如何替换文件?

python - Reportlab 将报告合并为一个 PDF

python - 如何将 pandas 数据框合并到现有的 reportlab 表中?