目前我正在尝试PDF documents
在reportlab
python 中创建。在我的 PDF 的每一页上,都会有多个这样的问题:
环顾四周后,我尝试使用Platypus SimpleDocTemplate
and来实现这种格式Platypus Paragraph
。像这样(仅供参考 - 这不是完整的代码,但我认为这会给你一个粗略的想法)
from reportlab.platypus import SimpleDocTemplate, Paragraph, Spacer
from reportlab.lib.styles import getSampleStyleSheet
from reportlab.lib.units import inch
doc = SimpleDocTemplate('myfile.pdf')
Story = [Spacer(1,1.65*inch)]
style = styles['Normal']
quetsionno = Paragraph('Questoin no goes here',style)
myquestion = Paragraph('my question goes here',style)
myanswer1 = Paragraph('my answer1 goes here',style)
myanswer2 = Paragraph('my answer2 goes here',style)
myanswer3 = Paragraph('my answer3 goes here',style)
Story.append(quetsionno)
Story.append(myquestion)
Story.append(myanswer1)
Story.append(myanswer2)
Story.append(myanswer3)
Story.append(Spacer(1,0.2*inch))
doc.build(Story)
它以我想要的方式创建问题,但是每当问题到达页面末尾时,它就会拆分问题和答案。像这样:
我不希望这种情况发生,所以根据这个 SO answer,我尝试使用paragraph.keepWithNext = True
但它没有任何区别。
有什么方法可以将我的问题+答案放在同一页面中(如果空间不足)?