我试图用Reportlab建立一个传奇(通过一个表)。这个表应该有三行两列,每个i,j元素是一个带有彩色项目符号的ListItem。代码如下:
ptext = '<font size=10><b><i>Legend:</i></b></font>'
light = []
mild = []
strong = []
#Create the table
ptext = '<font size=10>Light Barrier</font>'
light.append(ListFlowable(ListItem(Paragraph(ptext, styles["Normal"]),
bulletColor = lightRed, value = 'circle'), bulletType = 'bullet', start = 'circle'))
ptext = '<font size=10>Light Benefit</font>'
light.append(ListFlowable(ListItem(Paragraph(ptext, styles["Normal"]),
bulletColor = lightGreen, value = 'circle'), bulletType = 'bullet', start = 'circle'))
ptext = '<font size=10>Mild Barrier</font>'
mild.append(ListFlowable(ListItem(Paragraph(ptext, styles["Normal"]),
bulletColor = mildRed, value = 'circle'), bulletType = 'bullet', start = 'circle'))
ptext = '<font size=10>Mild Benefit</font>'
mild.append(ListFlowable(ListItem(Paragraph(ptext, styles["Normal"]),
bulletColor = mildGreen, value = 'circle'), bulletType = 'bullet', start = 'circle'))
ptext = '<font size=10>Strong Barrier</font>'
strong.append(ListFlowable(ListItem(Paragraph(ptext, styles["Normal"]),
bulletColor = strongRed, value = 'circle'), bulletType = 'bullet', start = 'circle'))
ptext = '<font size=10>Strong Benefit</font>'
strong.append(ListFlowable(ListItem(Paragraph(ptext, styles["Normal"]),
bulletColor = strongGreen, value = 'circle'), bulletType = 'bullet', start = 'circle'))
#Append them to the table
data = [light, mild, strong]
t = Table(data)
Story.append(t)
我得到的错误是:
"ListItem is not iterable".
感谢任何帮助。
最后,我想出了一个解决方案,我把它贴在下面。请注意,发布的解决方案回答了这样一个问题:在条目(a_ij)是ListItems的情况下,我如何制作一个Reportlab表?答案是,您需要在ListFlowable中包含ListItems,在嵌套的Python列表中包含ListFlowables。代码如下:
相关问题 更多 >
编程相关推荐