reportlab 生成PDF如何将内容左右显示

1.背景

在reportlab中可以使用SimpleDocTemplate创建一个文档,然后向里面添加内容,但是直接添加内容只能将值上下显示,如果要将内容左右显示的话,可以使用reportlab中BalancedColumns,它可以将内容分割成两个或者更多大小相等的列。

2.使用

from reportlab.platypus.flowables import BalancedColumns
from reportlab.platypus.frames import ShowBoundaryValue
mytable = [[1,2,3,4],[5,6,7]]#按照这个格式填写
img_activity=Image('./image/**.png')
F = [ mytable, img_activity]#在该列表中填写需要分列展示的内容
story.append(
 Balanced(
 F, #the flowables we are balancing
 nCols = 2, #the number of columns
 needed = 72,#the minimum space needed by the flowable
 spacBefore = 0,
 spaceAfter = 0,
 showBoundary = None, #optional boundary showing
leftPadding=None, #these override the created frame
 rightPadding=None, #paddings if specified else the
 topPadding=None, #default frame paddings
 bottomPadding=None, #are used
 innerPadding=None, #the gap between frames if specified else
 #use max(leftPadding,rightPadding)
 name='', #for identification purposes when stuff goes awry
 endSlack=0.1, #height disparity allowance ie 10% of available height
 )
 )

分列显示的内容,可以是表格、图表、文字等
只是这样将内容分列,内容上面的显示仍然不是特别的灵活。

3.效果展示

image.png

你可能感兴趣的:(reportlab 生成PDF如何将内容左右显示)