首先,我是python、reportlab、xhtml2pdf的新手。 我已经用reportlab完成了我的第一个pdf文件,但是我遇到了以下问题。
我需要两列的大文本。
首先我创建我的画布,创建我的故事,将我的大文本作为段落附加到故事中,创建我的框架,最后将故事添加到框架中。
c = Canvas("local.pdf")
storyExample = []
textExample = (""" This is a very large text Lorem Ipsum ... """)
storyExample.append(Paragraph(textExample, styleText))
frameExample = Frame(0, 0, 50, 50,showBoundary=0)
frameExample.addFromList(storyExample,c)
c.showPage()
c.save()
很有魅力。但我需要以两栏的形式展示这篇文章。
现在,文字就像是在我的框架里流动:
|aaaaaaaaaaaaaaaaaaaa|
|bbbbbbbbbbbbbbbbbbbb|
|cccccccccccccccccccc|
|dddddddddddddddddddd|
但我需要这样:
|aaaaaaaaa bbbbbbbbbb|
|aaaaaaaaa cccccccccc|
|bbbbbbbbb cccccccccc|
|bbbbbbbbb dddddddddd|
我希望你明白我想说的话。
如果你想在普通的ReportLab中完成这项工作,你必须自己想办法在哪里打断这一段。如果使用鸭嘴兽来设置文档类,则可以指定要在页面上布局文本的框架,框架的顺序将决定事情的流向。当段落到达页面左侧第一个框架的末尾时,内容将自动流入下一个框架,您可以将其放置在页面右侧以实现所需的效果。
这可以使用
BaseDocTemplate
和Frame
来完成,因为您可以读取here。我将接收器修改为仅使用两帧布局:相关问题 更多 >
编程相关推荐